lar - Recuperação
Exemplo de leitura de xml 1c. Gerando o arquivo XML

A transferência de dados é um processo muito importante em qualquer sistema de contabilidade, a plataforma 1C 8.3 e 8.2 não é exceção. A seguir veremos instruções sobre a maneira mais fácil de transferir dados de um sistema para outro com configuração semelhante (para configurações diferentes, você pode usar uma ferramenta para programadores - ou).

Antes que qualquer ação seja necessária, as mudanças são irreversíveis!

A maneira mais fácil e conveniente de transferir dados de 1C 8.3 para 1C 8.3 Accounting 3.0 é usar o processamento Upload e download de dados em formato XML (download - para 8.2 ou para 1C 8.3 ou em ITS). O tratamento é universal e adequado para qualquer configuração.

Não entraremos em detalhes; vejamos o passo a passo para migrar dados usando esse processamento usando o exemplo da transferência de mercadorias mais simples.

Fazendo upload de dados para XML

Primeiramente, vamos abrir o processamento no banco de dados de origem (de onde descarregaremos a mercadoria) e observar a interface:

Obtenha 267 videoaulas em 1C gratuitamente:

Você deve preencher imediatamente o campo “Nome do arquivo” - um novo arquivo de dados será criado ao longo deste caminho, que carregaremos no banco de dados do receptor. Logo abaixo, na seção tabular “Dados para upload”, é necessário selecionar os dados que queremos carregar do banco de dados.

Depois de selecionar um objeto na parte esquerda da tabela, você pode aplicar a seleção na parte direita da tabela:


No nosso exemplo, quero descarregar todos os produtos com o nome “Rake”.

Depois que todas as configurações forem concluídas, os dados podem ser carregados. Para fazer isso, clique no botão “Carregar dados”:


Carregando dados do xml em 1s 8.3

Os dados foram descarregados do banco de dados de origem e agora precisam ser transferidos para o banco de dados de destino.

Para fazer isso, você precisa iniciar o processamento já no banco de dados no qual deseja carregar os dados, e ir até a aba “Download”, selecionar o arquivo baixado no disco e clicar no botão “Carregar dados”:


Este exemplo é adequado apenas para transferência de dados entre configurações idênticas na plataforma 1C. Para entender o mecanismo de troca para programadores, escrevemos um artigo -.

A transferência de informações entre bancos de dados é uma das tarefas de seu suporte e administração. Para sua implementação efetiva, o processamento é criado em complexos 1C automatizados. Eles facilitam muito o trabalho rotineiro, agilizam os processos de upload e download de informações e ao mesmo tempo implementam o controle sobre sua correção. O upload de 1c para xml permite criar um arquivo com o conteúdo de qualquer objeto de configuração configurado e usá-lo quando precisar fazer upload de dados para uma configuração idêntica.

Ferramentas para criar uploads

Para exportar informações contidas em bancos de dados, utiliza-se principalmente o formato xml. Para 1C, muitos métodos de processamento foram desenvolvidos (por exemplo, UploadLoadDataxml82 epf), com os quais é possível gerar e carregar dados em um arquivo. Neste caso, o usuário deve receber um arquivo com determinada estrutura, que permita que as informações nele armazenadas sejam carregadas no banco de dados nativo ou transferidas para outro local. Ao criar um upload, devem ser observadas as seguintes regras:

  • Salvar os arquivos criados até a recuperação completa e conclusão dos procedimentos de verificação da veracidade das informações transferidas;
  • Se você usar o processamento como ferramenta de backup, crie subpastas separadas para cópias de dados e mantenha um registro delas para recuperação rápida.

O processamento universal “Upload e carregamento de dados XML” fornecido no programa de suporte ao usuário 1C, que pode ser encontrado no site ou nos discos ITS, é uma excelente ferramenta para exportação e importação de informações. Um usuário de computador pode fazer upload de todo o banco de dados e de seus objetos individuais e, além da exportação propriamente dita, várias operações são realizadas para verificar informações que ajudam a eliminar erros críticos nos dados. O processamento de upload para xml funciona em dois modos:

  • Descarregando. Cria um arquivo contendo objetos pagináveis ​​definidos pelo usuário;
  • Carregando. Lê um arquivo exportado anteriormente e grava as informações nele contidas na infobase.

O processamento permite verificar objetos em busca de caracteres inválidos e também inclui uma função para exportar informações com restrições.

O upload pode ser usado não apenas na troca de informações entre bancos de dados 1C. Com sua ajuda, você pode garantir a integração de diversos complexos, por exemplo, 1C e o sistema Parus. A versatilidade do formato XML permite criar programas de transferência de informações para quase todos os bancos de informações. Processar, fazer upload e download de dados XML é a ferramenta mais importante para troca de informações.

O processo de upload de dados paraxml

Vejamos como fazer upload de 1c para xml no modo normal. Após baixar o processamento UploadLoadDataxml.epf e abri-lo, deve-se realizar os seguintes passos:

  • Selecione objetos para exportação;
  • Configure os filtros necessários, por exemplo, por período;
  • Determine a localização do arquivo com informações sobre o subsistema do disco;
  • Comece a descarregar objetos.


Deve ser lembrado que a parte do cabeçalho do formato do arquivo de upload difere do formato de arquivo usado durante o upload de acordo com os planos de troca.

xml

O xml é carregado em 1c no banco de dados receptor com uma configuração idêntica ao banco de dados de origem. Antes de carregar o xml 1c em 1c, você precisa abrir o processamento no banco de dados receptor. Então você precisa especificar o caminho para o arquivo carregado anteriormente e baixar os dados clicando no botão “Carregar dados”.

Se necessário, caixas de seleção são ativadas para carregar dados em modo de troca em uma infobase distribuída e ignorar erros que ocorrem ao carregar objetos.


Depois disso, é necessário verificar os bancos de dados e certificar-se de que todos os elementos estão carregados corretamente para não perdê-los, por exemplo, caso ocorra um erro no manipulador de eventos após carregar um objeto.


Este processamento permite a troca de dados entre as mesmas configurações (idênticas) na plataforma 1C 8.2 - Bukh, ZUP, UT, UPP e outras, o principal é que as configurações sejam iguais!

Processando capturas de tela

(foto)

Modos de operação

O processamento implementa 2 modos de operação: Upload (criando um arquivo de upload de dados especificados pelo usuário) e Load (lendo um arquivo de upload criado pelo modo de mesmo nome e escrevendo os dados nele contidos). O modo é definido selecionando-o no campo Modo.

Antes de iniciar um modo específico (clicando no botão Executar), você precisa especificar o nome do arquivo de upload, inserindo-o manualmente no campo "Nome do arquivo" ou usando o botão para selecionar este campo e a caixa de diálogo padrão de seleção de arquivo .

No modo download é possível editar o uso dos totais na escrita dos registros, o que pode afetar a velocidade do download.

Os botões "Desativar totais" e "Ativar totais" estão disponíveis quando o sinalizador "Ativar a capacidade de editar o uso de totais durante o carregamento de dados" está definido e são usados ​​para controlar manualmente o modo de uso de totais ao carregar dados.

Condições para a aplicabilidade do processamento

O processamento só pode ser utilizado nos casos em que a infobase em que os dados foram carregados e aquela em que os dados foram carregados sejam homogêneas (as configurações são idênticas, os dados podem ser diferentes), ou todos os objetos carregados são quase completamente idênticos em composição e tipos de detalhes e partes da tabela, propriedades do objeto de metadados “principal”, etc. Note-se que, devido a estas limitações, o processamento destina-se sobretudo à troca entre SI homogéneos.

O formato do arquivo de upload difere do formato de arquivo criado durante o upload de acordo com um plano de troca na parte do cabeçalho. Para fazer upload de dados (elementos de diretório, conjuntos de registros de registro, etc.), o processamento usa o mesmo mecanismo de serialização XML que o upload de acordo com os planos de troca nesta parte, os formatos de arquivo são idênticos;

Determinando a composição da descarga

O processamento permite o upload total e parcial dos dados da infobase para um arquivo. A composição dos dados carregados é configurada na caixa de diálogo marcando as caixas na coluna da árvore que exibe objetos de metadados para os quais os dados podem ser carregados. Uma coluna adicional de caixas de seleção, “Se necessário”, define a necessidade de descarregar objetos deste tipo “por referência”. Ou seja, se a caixa de seleção estiver marcada apenas na coluna “Se necessário”, então os dados de tal objeto não serão baixados completamente, mas apenas na medida necessária para manter a integridade referencial na infobase que carregará o download arquivo.

Ao abrir um formulário, o processamento define o sinal de descarregamento por referência a todos os objetos, o que garante a integridade referencial do fragmento descarregado da infobase.

Ao clicar no botão “Detectar objetos descarregados por link”, o processamento analisa quais links de dados podem estar contidos em objetos que possuem o atributo unload completo definido, e preenche automaticamente a coluna de flags indicando a necessidade de descarregamento por link. Se o objeto já tiver o sinalizador de descarregamento completo definido, o sinalizador de descarregamento por referência não será definido.

Possíveis aplicações

A utilização deste processamento é possível, por exemplo, para criar uma cópia de segurança total ou parcial dos dados, trocar dados entre infobases e também como ferramenta auxiliar na restauração de infobases problemáticas.

Numa organização, a contabilidade pode ser mantida não apenas em soluções da plataforma 1C:Enterprise, mas também em outros sistemas de software (Galaktika, Parus, SAP, etc.). Isto levanta o desafio de integrar duas aplicações.

Por exemplo, algum aplicativo (vamos chamá-lo de "X") precisa ler uma lista de documentos de configuração. Não falaremos sobre os benefícios práticos de resolver tal problema; apenas observarei que a maneira mais conveniente e universal em tal situação seria fazer upload de uma lista de documentos em formato XML.

O Exchange que usa esse formato é universal porque a maioria dos aplicativos pode trabalhar com ele. Vejamos como você pode fazer upload de uma lista de documentos de configuração para um arquivo XML de 1C:Enterprise.

Carregar para XML

E então, vamos ao principal. Precisamos percorrer a lista de metadados do documento e gerar a lista no arquivo XML. A captura de tela a seguir mostra o algoritmo para gerar um arquivo XML:

Função CreateXML() Exportar //Obtém o nome do arquivo temporário Caminho = GetTemporaryFileName(); // Inicializa a classe "XML Record" Entrada = Nova EntradaXML; //Abre um arquivo temporário para escrita - 8 ") ; // Escreve a declaração do arquivo XML Registro. WriteDeclarationXML() ; // Registro. WriteElementStart(" DocumentosConfigurações") ; //Primeiro elemento // Atributo do primeiro elemento com a data em que o arquivo foi criado Registro. WriteAttribute("gerado", Format(DataAtual(), "DF = aaaa-MM- ddThh:mm:ss; DLF = DT")) ; // Escreva um elemento para cada documento de configuração. Colocamos o nome do documento no texto. Para cada documento dos metadados. Gravação do Ciclo de Documentos. WriteElementStart("Documento"); Registro. WriteText(Doc.Nome); Registro. WriteEndElement(); Fim do Ciclo; //Termina de escrever o primeiro elemento Registro. WriteEndElement(); Registro. Fechar(); //fecha o arquivo // Obtém os dados binários do arquivo e coloca-os em armazenamento temporário BinaryData = novo BinaryData(Caminho); Endereço = PlaceInTemporaryStorage(BinaryData, Novo UniqueIdentifier) ​​​​; Endereço de devolução; //Retorna o endereço do arquivo para o armazenamento Função Final

Cada elemento criado deve ser preenchido corretamente. Após executar “WriteStartofElement()”, o método “WriteEndElement()” deve ser executado, caso contrário a estrutura do arquivo XML ficará incorreta.

O modelo geral para criação de arquivos XML é a seguinte sequência:

// 1. Inicialize a classe "XML Record" Entrada = Nova EntradaXML; // 2. Abra um arquivo temporário para gravação Registro. OpenFile(Caminho, "UTF-8"); // 3. Escreva a declaração do arquivo XML Registro. WriteDeclarationXML() ; // // 4. ++ Escreva o conteúdo do arquivo XML Registro. WriteElementStart("XMLElement") ; Registro. WriteEndElement(); // -- Grava o conteúdo do arquivo XML // 5. Feche o arquivo Registro. Fechar();

Essas cinco etapas criam praticamente qualquer arquivo XML.

Em nosso exemplo, o arquivo gerado é convertido em dados binários e retornado ao local onde a função CreateXML é chamada. Este arquivo pode então ser gravado no sistema de arquivos.

Você pode ver um exemplo do arquivo enviado na imagem acima.

Aplicativo de terceiros

Por exemplo, criei um aplicativo no .NET Framework para demonstrar a leitura de um arquivo XML em um aplicativo de terceiros.

O programa lê o arquivo criado e exibe os documentos em forma de lista:

Você pode experimentar você mesmo, o aplicativo está disponível para download no link no final do artigo.

Versatilidade

O formato XML é usado na maioria das configurações para troca de dados entre soluções de aplicativos na plataforma 1C:Enterprise. Outro método de comunicação comumente usado é através de uma conexão COM. XML permite a troca com praticamente qualquer aplicativo, por isso merece ser chamado de universal.

Arquivos para download:

Aplicativo leitor de arquivos XML.

Processando a geração do arquivo XML.

Quando uma empresa utiliza constantemente algum tipo de pacote de software em seu trabalho, então, naturalmente, sempre surge a questão de seu suporte e administração contínuos. Não há como evitar as tarefas de troca, armazenamento e restauração de dados. Vejamos como carregar ou descarregar dados de 1C em formato XML, pois este é um procedimento importante para este tópico.

Eles são construídos de forma que ao fazer o upload você possa receber um arquivo XML no qual serão registrados os dados necessários ao cliente. Ao mesmo tempo, simultaneamente ao registro, a exatidão dos registros transferidos é monitorada quanto a erros críticos.

Assim, o upload para um arquivo XML (importação de registros) de uma base de informações e o posterior carregamento de XML para outra representa uma troca de dados em formato XML entre bancos de dados.

Esse procedimento, principalmente com grandes quantidades de informações, economiza muito trabalho manual.

A importação (o arquivo resultante) também pode ser usada como arquivo para recuperação em situações inesperadas (em caso de perda ou dano).

Muitas dessas ferramentas de processamento foram desenvolvidas e estão disponíveis na Internet. A responsabilidade pelo seu uso recai sobre os ombros (e cabeça) do cliente.

Mas para usuários oficiais do Odeneski, os desenvolvedores criaram um processador universal “Upload/Load XML Data”.

IMPORTANTE. Exportar para XML em 1C e carregar posteriormente em XML de 1C é aceitável para configurações idênticas - caso contrário, será danificado.

Manipulador universal

Pontos-chave para usar o desenvolvedor universal:

  • Salve os arquivos de importação até que a transferência dos registros seja concluída e sua exatidão seja verificada;
  • Quando usadas como cópias de segurança, um registro delas deve ser mantido para ordenar a pesquisa.

Seu funcionamento possui dois modos: criar um arquivo ao salvar a informação e lê-lo/escrevê-lo ao importar.

Além disso, o usuário pode definir restrições adicionais tanto na exportação quanto no carregamento de dados.

Extraindo registros

Você pode fazer upload de dados em todo o banco de dados e seletivamente - objeto por objeto.

Após baixar, instalar e abrir o manipulador, ocorre o seguinte:

Sua seleção é feita na caixa de diálogo que se abre após o lançamento. Para fazer isso, marque as caixas da lista que exibe os objetos de metadados a serem recuperados;

  1. Os filtros necessários são configurados (por exemplo, por data);
  2. O espaço em disco está selecionado;
  3. A operação em si é iniciada.

Fazendo upload de registros para o receptor

O primeiro passo para aceitar dados no banco de dados receptor é abrir o programa processador nele.

Após o caminho para o arquivo de origem ter sido especificado e os sinalizadores de configurações do procedimento terem sido ativados (se necessário), você pode iniciar o processo com o botão “Carregar dados”.


Agora você sabe como carregar ou descarregar dados de 1C em formato XML para salvar dados e trocar entre bancos de dados.

Escreva nos comentários sobre sua experiência neste assunto.

15-11-2018T19:32:35+00:00

O processamento universal "Carregamento e carregamento de dados XML" realiza o descarregamento total ou parcial dos dados da infobase em um arquivo no formato XML. Posteriormente, este arquivo pode ser carregado na infobase usando o mesmo processamento. O formato do arquivo de upload difere do formato de arquivo criado durante o upload de acordo com um plano de troca na parte do cabeçalho.

O processamento só pode ser utilizado nos casos em que a infobase em que os dados foram carregados e aquela em que os dados foram carregados sejam homogêneas (as configurações são idênticas, os dados podem ser diferentes), ou todos os objetos carregados são quase completamente idênticos em composição e tipos de detalhes e partes da tabela, propriedades do objeto de metadados “principal” e assim por diante.

A utilização deste processamento é possível, por exemplo, para criar um backup total ou parcial dos dados, trocar dados entre infobases e também como ferramenta auxiliar na restauração de infobases defeituosas.

O processamento oferece suporte ao upload de dados com a capacidade de especificar a seleção por período. Também foi implementada a verificação de objetos quanto à presença de caracteres inválidos quando trocados via XML.

Atenciosamente, (professor e desenvolvedor).

Numa organização, a contabilidade pode ser mantida não apenas em soluções da plataforma 1C:Enterprise, mas também em outros sistemas de software (Galaktika, Parus, SAP, etc.). Isto levanta o desafio de integrar duas aplicações.

Por exemplo, algum aplicativo (vamos chamá-lo de "X") precisa ler uma lista de documentos de configuração. Não falaremos sobre os benefícios práticos de resolver tal problema; apenas observarei que a maneira mais conveniente e universal em tal situação seria fazer upload de uma lista de documentos em formato XML.

O Exchange que usa esse formato é universal porque a maioria dos aplicativos pode trabalhar com ele. Vejamos como você pode fazer upload de uma lista de documentos de configuração para um arquivo XML de 1C:Enterprise.

Carregar para XML

E então, vamos ao principal. Precisamos percorrer a lista de metadados do documento e gerar a lista no arquivo XML. A captura de tela a seguir mostra o algoritmo para gerar um arquivo XML:

Função CreateXML() Exportar //Obtém o nome do arquivo temporário Caminho = GetTemporaryFileName(); // Inicializa a classe "XML Record" Entrada = Nova EntradaXML; //Abre um arquivo temporário para escrita- 8 " ) ; // Escreve a declaração do arquivo XML Registro. WriteDeclarationXML() ; // Registro. WriteElementStart(" DocumentosConfigurações" ) ; //Primeiro elemento // Atributo do primeiro elemento com a data em que o arquivo foi criado Registro. WriteAttribute("gerado", Format(DataAtual(), "DF = aaaa-MM- ddThh:mm:ss; DLF = DT" ) ) ; // Escreva um elemento para cada documento de configuração. Colocamos o nome do documento no texto. Para cada documento dos metadados. Gravação do Ciclo de Documentos. WriteElementStart("Documento"); Registro. WriteText(Doc.Nome); Registro. WriteEndElement(); Fim do Ciclo; //Termina de escrever o primeiro elemento Registro. WriteEndElement(); Registro. Fechar(); //fecha o arquivo // Obtém os dados binários do arquivo e coloca-os em armazenamento temporário BinaryData = new BinaryData(Caminho); Endereço = PlaceInTemporaryStorage(BinaryData, Novo UniqueIdentifier) ​​​​; Endereço de devolução; //Retorna o endereço do arquivo para o armazenamento Função Final

Cada elemento criado deve ser preenchido corretamente. Após executar “WriteStartofElement()”, o método “WriteEndElement()” deve ser executado, caso contrário a estrutura do arquivo XML ficará incorreta.

O modelo geral para criação de arquivos XML é a seguinte sequência:

// 1. Inicialize a classe "XML Record" Entrada = Nova EntradaXML; // 2. Abra um arquivo temporário para gravação Registro. OpenFile(Caminho, "UTF - 8 " ) ; // 3. Escreva a declaração do arquivo XML Registro. WriteDeclarationXML() ; // // 4. ++ Escreva o conteúdo do arquivo XML Registro. WriteElementStart("XMLElement"); Registro. WriteEndElement(); // -- Grava o conteúdo do arquivo XML // 5. Feche o arquivo Registro. Fechar();

Essas cinco etapas criam praticamente qualquer arquivo XML.

Em nosso exemplo, o arquivo gerado é convertido em dados binários e retornado ao local onde a função CreateXML é chamada. Este arquivo pode então ser gravado no sistema de arquivos.

Você pode ver um exemplo do arquivo enviado na imagem acima.

Aplicativo de terceiros

Por exemplo, criei um aplicativo no .NET Framework para demonstrar a leitura de um arquivo XML em um aplicativo de terceiros.

O programa lê o arquivo criado e exibe os documentos em forma de lista:

Você pode experimentar você mesmo, o aplicativo está disponível para download no link no final do artigo.

Versatilidade

O formato XML é usado na maioria das configurações para troca de dados entre soluções de aplicativos na plataforma 1C:Enterprise. Outro método de comunicação comumente usado é através de uma conexão COM. XML permite a troca com praticamente qualquer aplicativo, por isso merece ser chamado de universal.

Arquivos para download:

Aplicativo de leitura de arquivos XML.

Processando a geração do arquivo XML.

Como carregar dados baixados de comércio ou salário em 1C: Contabilidade 8.3 (revisão 3.0)?

01-12-2016T12:52:06+00:00

Na maioria das vezes, os dados do comércio ou da folha de pagamento são transferidos para a contabilidade.

Os dados baixados são um arquivo com a extensão " .xml". Como carregá-lo no programa?

  1. Vamos começar com criando uma cópia de backup departamento de contabilidade, para que se o download estragar o banco de dados, possamos retornar ao seu estado original. Está escrito sobre a criação de cópias de backup.
  2. Agora abra o menu " Todas as funções" (sobre isso ).
  3. Na janela que se abre, encontre o item " Tratamentos" e abra-o com um sinal de mais.
  4. Encontramos e abrimos entre seus itens o processamento " Troca universal de dados em formato XML".
  5. ".
  6. Nós indicamos o caminho para o arquivo a partir do qual carregaremos os dados.
  7. Aperte o botão " Baixar dados".

Se tudo correu bem, ótimo! Se houver erros, o motivo provavelmente é que regras inadequadas (desatualizadas) foram usadas para descarregar do comércio ou do salário - elas precisam ser atualizadas e recarregadas.

Atenciosamente, (professor e desenvolvedor).

- páginas da web conhecidas que também são análogas ao XML com verificações fracas.

Objetos leitor/gravador XML, FastInfoset e HTML ampliam os recursos de leitura de arquivos de texto com processamento integrado de tags de marcação.

Eles também são usados ​​para objetos DOMBuilder/DOMRecord (veja abaixo) como fontes de dados.

Os arquivos XML 1C contêm informações de texto, ou seja, são arquivos de texto. Os objetos 1C XML Reader e 1C Write XML são um “complemento” que facilita o trabalho com tags XML em um arquivo 1C.

Os objetos ReadingFastInfoset 1C e WritingFastInfoset 1C, ReadingHTML 1C e WritingHTML 1C são completamente semelhantes a ReadingXML 1C e WritingXML 1C e servem para funcionar da mesma forma com outros formatos.

Arquivo XML 1C usado nos exemplos

Diretório>

Diretório>

Valor do textoProps>
Diretório>
Configuração>

Exemplo 1. Lendo um arquivo XML 1C em uma árvore de valores usando Leitura XML 1C

//abre o arquivo XML 1C para leitura usando ReadingXML 1C
Arquivo = Novo ReadXML();
File.OpenFile("D:\ConfigurationStructure.xml");

//prepara a árvore de valores
//cada branch XML pode ter um nome, atributos e valor
dzXML = NovaÁrvoreValor();
dzXML.Columns.Add("Nome");
dzXML.Columns.Add("Valor");
dzXML.Columns.Add("Atributos");

//como uma string XML pode ter vários atributos, iremos escrevê-los na tabela de valores
//cada atributo tem um nome e um valor
tAttributes = New ValueTable();
tAttributes.Columns.Add("Nome");
tAttributes.Columns.Add("Valor");

//o nível de aninhamento nos ajudará a entender quando precisamos adicionar um branch aninhado e quando precisamos voltar a subir um nível
Nível de aninhamento = 0;
//a linha atual é uma linha de árvore, mudará conforme o aninhamento aumentar
LinhaAtual = Indefinido;
//a leitura do arquivo XML 1C não é feita linha por linha, mas de acordo com a estrutura quando o arquivo terminar a leitura retornará FALSE;
Enquanto File.Read() Loop

//estamos interessados ​​em três tipos de nós - o início do elemento, o texto (o valor do elemento) e o final do elemento (para retornar ao nível superior)
Se File.NodeType = XMLNodeType.ElementStart então

Nível de aninhamento = Nível de aninhamento + 1;

//se esta for a primeira linha, adicione-a ao topo da árvore e salve apenas o nome
Se CurrentRow = indefinido então
LinhaAtual = dXML.Lines.Add();
LinhaAtual.Nome = Arquivo.Nome;
Continuar;
De outra forma
//linhas aninhadas
LinhaAtual = LinhaAtual.Rows.Add();
LinhaAtual.Nome = Arquivo.Nome; //salva o nome

//este elemento XML possui atributos?
Se File.NumberAttributes() > 0 Então
//se sim, copie a tabela vazia preparada para salvar os atributos
tAttributesNode = tAttributes.Copy();
//percorre o número de atributos deste elemento
Para conta = 0 por arquivo.Número de atributos()-1 ciclo
//para cada atributo, lembre-se do nome e do valor
String = tNodeAttributes.Add();
Linha.Nome = Arquivo.NomeAtributo(Sch);
Linha.Value = Arquivo.AttributeValue(Ac);
Fim do Ciclo;
//salva a tabela de atributos do elemento na linha atual
CurrentRow.Attributes = tNodeAttributes;
fim se;
fim se;

ElseIf File.NodeType = XMLNodeType.EndElement Então
//no início do elemento aumentamos o nível de aninhamento, no final do elemento diminuímos
Nível de aninhamento = Nível de aninhamento - 1;
//retorna a linha atual um nível acima
LinhaAtual = LinhaAtual.Parent;

ElseIf File.NodeType = XMLNodeType.Text Então
//se o elemento tiver um valor, basta salvá-lo
CurrentRow.Value = Arquivo.Value;

fim se;

Fim do Ciclo;

Arquivo.Fechar();

Exemplo 2. Gravando um arquivo XML 1C usando o objeto XML 1C Record

//cria um arquivo Registro XML 1C
Arquivo = NovoXMLRecord();
File.OpenFile("D:\ConfigurationStructure.xml", "UTF-8");
File.WriteElementStart("Configuração");

//usa metadados para percorrer todos os diretórios (para mais detalhes, veja "Trabalhando com metadados")
Para cada diretório do ciclo Metadata.Directories

//WriteStartofElement - abre uma nova ramificação [subordinada]
File.WriteElementStart("Diretório");
//WriteAttribute - grava um atributo em uma ramificação aberta anteriormente
File.WriteAttribute("Nome", Diretório.Nome);
File.WriteAttribute("Sinônimo", Directory.Sinônimo);

//usando metadados, examinamos todos os detalhes do diretório
Para cada Props do Ciclo Directory.Props




Fim do Ciclo;

//usa metadados para percorrer todas as partes tabulares do diretório
Para cada PM do Diretório Partes Tabulares do Ciclo.
File.WriteElementStart("TabularPart");
File.WriteAttribute("Nome", PM.Nome);
File.WriteAttribute("Sinônimo", PM.Sinônimo);

Para cada adereço do ciclo PM.Props
File.WriteElementStart("Adereços");
File.WriteAttribute("Nome", Atributos.Nome);
File.WriteAttribute("Sinônimo", Atributos.Sinônimo);
Arquivo.WriteEndElement();
Fim do Ciclo;

Arquivo.WriteEndElement();
Fim do Ciclo;

//WriteEndElement - “fecha” o branch aberto anteriormente usando WriteBeginElement
Arquivo.WriteEndElement();
Fim do Ciclo;

Arquivo.WriteEndElement();
Arquivo.Fechar();



 


Ler:



Música colorida no arduino Música colorida no microcontrolador AVR

Música colorida no arduino Música colorida no microcontrolador AVR

A música leve no controlador atmega8 chamou a atenção pela facilidade de fabricação. Ao repetir o esquema não houve necessidade de calcular...

O que fazer se o seu Mac esquentar no Windows Resfrie o seu MacBook no Windows

O que fazer se o seu Mac esquentar no Windows Resfrie o seu MacBook no Windows

Muitos usuários de Mac provavelmente já passaram por uma situação em que estava tão alto que parecia que iria decolar. Geralmente isso não é...

Seu Mac começará a ficar muito lento, mas isso pode ser evitado

Seu Mac começará a ficar muito lento, mas isso pode ser evitado

Para proprietários de aimaks, minis, macbooks e todos que se preocupam com a temperatura excessiva de seus aparelhos.UPD: tudo o que está escrito abaixo é especificamente...

Quais são as características do jogo no servidor europeu Archeage?

Quais são as características do jogo no servidor europeu Archeage?

A Trion Worlds começou a trabalhar na localização do jogo coreano ArcheAge em 2013, abrindo imediatamente o pré-registro para o teste beta. 17...

imagem de feed RSS