Ir diretamente para o conteúdo principal

EscreverArquivoDeTextoNaSeçãoDeArquivoLocal

Estrutura

WriteTextFileToLocalFileSelection(sFileName, sStartFlag, sEndFlag, sToWrite, sSectionStartFlag, sSectionEndFlag, sIDStartFlag, sIDEndFlag, sIDValue)

Parâmetros

| Parâmetro | Tipo | Descrição
| sFileName | String | o nome do ficheiro no diretório temporário da IndySoft que deve ser lido. Trata-se simplesmente do nome do ficheiro mais a extensão — isto NÃO deve incluir os caminhos completos dos diretóriosStartFlag | String | o texto que deve ser pesquisado para iniciar o texto de retorno. O texto de retorno NÃO incluirá este sStartFlag textsEndFlag | String | o texto que deve ser pesquisado para terminar o texto de retorno. O texto de retorno NÃO incluirá este sEndFlag.sToWrite | String | o texto que será inserido no ficheiro de texto, entre sStartFlag e sEndFlag.sSectionStartFlag | String | o texto que deve ser procurado para iniciar a secção apropriada.sSectionEndFlag | String | o texto que deve ser procurado para terminar a secção apropriada.sIDStartFlag | String | o texto que deve ser pesquisado (na sSection devolvida pelos dois parâmetros acima) para encontrar o início dos campos de IDIDEndFlag | String | o texto que deve ser pesquisado (na sSection devolvida pelos dois parâmetros acima) para encontrar o fim dos campos de IDIDValue | String | o texto que deve ser comparado com o texto de ID devolvido, para verificar se encontrámos o item apropriado. Nesse caso, os parâmetros sStartFlag e sEndFlags são utilizados para localizar a informação adequada nesta secção. |

Valor de retorno

Char

«1» = Sucesso, «0» = Falha

Descrição

As funções do grupo «Funções de leitura/gravação de ficheiros locais» são normalmente utilizadas para criar e ler ficheiros XML (ou outros) a partir de um diretório de rede comum, com o objetivo de sincronizar os dados/funcionalidades do IndySoft com outro sistema, como um sistema de contabilidade. Esta função requer que exista um ficheiro com o nome sFileName no diretório temporário atual do IndySoft — provavelmente copiado para lá pela função «GetLocalFile». Normalmente, trata-se de um ficheiro XML com dados provenientes de outra aplicação de base de dados. Esta função é semelhante à WriteTextToLocalFile, mas apenas grava numa secção específica do ficheiro e verifica se cada secção possui um ID exato. Por exemplo, imagine que está a ler um ficheiro XML que devolve informações sobre os custos de um conjunto de peças. O ficheiro XML pode ter o seguinte aspeto:

<?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</UnitPrice>

</PartDetailItem>

<PartDetailItem>

<LineNo>3</LineNo>

<PartNumber>PA8974</PartNumber>

<UnitPrice>56.45</UnitPrice>

</PartDetailItem>

</PriceResponse>

Para continuar o exemplo, digamos que precisa de atualizar o UnitPrice para PartNumber = 'PA4343' para um novo valor de '24.01'. Só lhe interessaria consultar as secções «PartDetailItem» e, mais especificamente, apenas a secção de detalhes em que o campo «PartNumber» fosse igual a «PA4343». Segue-se o script personalizado que deve utilizar:

if WriteTextToLocalFileSection('FromMyAccountingSystem.xml', '<UnitPrice>', '</UnitPrice>', '24.01', '<PartDetailItem>', '</PartDetailItem>', '<PartNumber>', '</PartNumber>', 'PA4343')

Exemplo

Não foi fornecido nenhum exemplo

Compatibilidade de aplicações

Gestão de Calibração IndySoft, Gestão de Laboratórios Comerciais IndySoft, Gestão de Ferramentas IndySoft

Veja também

Sem tópicos relacionados |