Ir al contenido principal

Obtener texto de una sección de archivo local

Estructura

GetTextFromLocalFileSelection(sFileName, sStartFlag, sEndFlag, sSectionStartFlag, sSectionEndFlag, sIDStartFlag, sIDEndFlag, sIDValue)

Parámetros

| Parámetro | Tipo | Descripción
| sFileName | Cadena | el nombre del archivo del directorio temporal de IndySoft que se debe leer. Se trata simplemente del nombre del archivo más la extensión; NO debe incluir la ruta completa del directorio.sStartFlag | Cadena | el texto que se debe buscar para iniciar el texto de retorno. El texto de retorno NO incluirá este texto sStartFlag.sEndFlag | Cadena | el texto que se debe buscar para finalizar el texto de retorno. El texto devuelto NO incluirá este sEndFlag.sSectionStartFlag | Cadena | el texto que debe buscarse para iniciar las secciones correspondientesSectionEndFlag | Cadena | el texto que debe buscarse para finalizar las secciones correspondientesIDStartFlag | Cadena | el texto que debe buscarse (en la sSection devuelta por los dos parámetros anteriores) para encontrar el inicio de los campos de IDIDEndFlag | Cadena | el texto que debe buscarse (en la sSection devuelta por los dos parámetros anteriores) para encontrar el final de los campos de IDIDValue | Cadena | el texto que debe compararse con el texto de ID devuelto, para comprobar si hemos encontrado la sección correspondiente. En tal caso, se utilizan sStartFlag y sEndFlags para localizar la información correspondiente en esta sección. |

Valor devuelto

Cadena

Descripción

Las funciones del grupo «Funciones de lectura y escritura de archivos locales» se utilizan normalmente para crear y leer archivos XML (u otros) desde un directorio de red común, con el fin de sincronizar los datos y la funcionalidad de IndySoft con otro sistema, como un sistema de contabilidad. Esta función requiere que exista un archivo con el nombre sFileName en el directorio temporal actual de IndySoft, probablemente copiado allí desde la función «GetLocalFile». Normalmente se trata de un archivo XML con datos procedentes de otra aplicación de base de datos. Esta función es similar a GetTextFromLocalFile, pero solo lee una sección concreta del archivo y comprueba si cada sección contiene un identificador exacto. Por ejemplo, supongamos que estás leyendo un archivo XML que devuelve información sobre los costes de un grupo de piezas. El archivo XML podría tener el siguiente aspecto:

<?xml version='1.0' encoding='UTF-8' ?>

<PriceResponse>

<Header>

<Customer>100078</Customer>

<Code>AIT</Code>

</Header>

<PartDetailItem>

<LineNo>1</LineNo>

<PartNumber>PA0234</PartNumber>

<UnitPrice>10.23</UnitPrice>

</PartDetailItem>

<PartDetailItem>

<LineNo>2</LineNo>

<PartNumber>PA4343</PartNumber>

<UnitPrice>23.45</PrecioUnitario>

</DetallePieza>

<DetallePieza>

<NúmeroLínea>3</NúmeroLínea>

<NúmeroPieza>PA8974</NúmeroPieza>

<PrecioUnitario>56.45</PrecioUnitario>

</DetallePieza>

</RespuestaPrecio>

Para continuar con el ejemplo, supongamos que necesita conocer el PrecioUnitario para NúmeroPieza = 'PA4343'. Solo te interesaría consultar las secciones «PartDetailItem» y, concretamente, solo la sección de detalles en la que el campo «PartNumber» sea igual a «PA4343». A continuación se muestra el script personalizado que debe utilizar:

sPrice = GetTextFromLocalFileSection('FromMyAccountingSystem.xml', '<UnitPrice>', '</UnitPrice>', '<PartDetailItem>', '</PartDetailItem>', '<PartNumber>', '</PartNumber>', 'PA4343')

Ejemplo

No se ha proporcionado ningún ejemplo

Compatibilidad de aplicaciones

Gestión de calibraciones de IndySoft, Gestión de laboratorios comerciales de IndySoft, Gestión de herramientas de IndySoft

Véase también

No hay temas relacionados |