Elipse Knowledgebase



Criando modelos para a ferramenta de importação e exportação do E3 Studio

1) Introdução

A ferramenta de importação e exportação do E3 Studio permite ao usuário gravar um arquivo do tipo CSV contendo informações sobre objetos do E3, e posteriormente utilizar este arquivo para criar novos objetos. Essas informações incluem propriedades, associações e coleções dos objetos.

O processo de importação e exportação foi reformulado a partir da versão 2.5 do E3, e está baseado agora na utilização de modelos. Os modelos são arquivos com extensão .INI (arquivos de inicialização do Windows) utilizados para configurar a ferramenta de importação e exportação. Através desses modelos é possível especificar qual o separador de colunas será utilizado no arquivo CSV, quais as colunas que esse arquivo terá, etc. Alguns modelos são fornecidos pela Elipse Software juntamente com a instalação da nova versão do E3, mas é possível criar modelos específicos para cada necessidade do usuário.

No decorrer deste artigo serão apresentadas instruções de como criar modelos adequados a cada situação, além de dicas para melhor usufruir das funcionalidades dessa nova ferramenta.


2) Entendendo a estrutura dos modelos

Os modelos, embora sejam arquivos texto, devem respeitar uma estrutura para que possam ser compreendidos pela ferramenta de importação e exportação. Essa estrutura é a mesma encontrada nos arquivos de inicialização do Windows, com extensão .INI. Estes arquivos são organizados em seções e, em cada uma delas, é possível definir variáveis para o que se deseja configurar. Por exemplo, na seção Configuration, encontra-se a variável Separator, que define qual o separador de colunas que deverá ser utilizado.

O trecho abaixo

[Configuration]
Separator=',' 

significa que será utilizada a vírgula como separador de colunas do arquivo CSV.

Os arquivos .INI, de um modo geral, seguem o seguinte formato:

  • O arquivo é organizado em seções, e cada seção contém uma ou mais variáveis. As seções são identificadas por nomes entre colchetes.
  • As variáveis são as palavras antes do símbolo "=". Uma seção não pode conter duas variáveis com o mesmo nome.
  • Linhas em branco são ignoradas.
  • O texto a partir de um caractere ";" é considerado comentário, desconsiderado na interpretação do arquivo.

O formato é um texto facilmente alterável pelo usuário, pois é de fácil compreensão devido à forma organizada de apresentar as informações. É possível gerar um modelo novo utilizando um editor de textos comum, tendo um modelo antigo como base ou partindo desde o início.

Os modelos utilizados no E3 permitem que o usuário redefina valores para os nomes das colunas do arquivo CSV, bem como para os tipos de objetos. Além disso, também permitem que o usuário agrupe mais de uma propriedade em uma mesma coluna. Isso tudo é feito através da definição de identificadores, que são palavras-chave utilizadas no arquivo CSV e associadas a propriedades ou classes de objetos no arquivo .INI.

No E3, os modelos da ferramenta de importação e exportação devem ser definidos com as seções e variáveis apresentadas a seguir. Algumas são obrigatórias para a exportação e serão indicadas no decorrer do texto, mas para a importação, são todas opcionais. Caso omitidas, o E3 assume um comportamento padrão.


[Header]

Nesta seção devem ser definidos os identificadores permitidos para os nomes de colunas e tipos de objetos, bem como a ordem das colunas no arquivo CSV, para o caso da exportação. Essa seção é obrigatória para a exportação e as variáveis definidas são:

header: Nesta variável devem ser listadas todas as colunas, separadas por vírgula, e na ordem em que devem estar no arquivo CSV. Se o nome da coluna não é igual a um nome de propriedade, na variável header deve ser utilizado o identificador, e a relação dele com o nome real da propriedade deve ser feita através de uma variável na seção [Columns]. A variável header é obrigatória no processo de exportação.

types: Define os identificadores para os tipos de objetos permitidos no arquivo CSV. Os identificadores deverão ser listados nesta variável separados por vírgulas. Só é necessário definir essa variável se algum identificador for diferente do nome da classe do objeto. Neste caso, para cada um deverá haver também uma variável na seção [Types].

[Header]
header=ObjectType,Name,DocString,N1/B1,N2/B2,N3/B3,N4/B4,Scan,AllowRead
types=Tag,Bloco,Elemento 


[Configuration]

Devem ser definidas as configurações gerais da ferramenta. As variáveis dessa seção são:

separator: Define qual o separador que será utilizado para delimitar as colunas no arquivo CSV.

root: Define se o objeto-raiz (objeto de onde a opção de importação ou exportação foi chamada) será importado/exportado junto com os objetos-filhos ou não. Essa opção é uma novidade em relação à versão anterior da ferramenta, onde o objeto-raiz (no caso, Driver de Comunicação ou Área de alarmes) nunca era exportado. No caso da importação, o objeto-raiz não será criado, apenas terá suas propriedades atualizadas.

link: Define se as associações dos objetos serão importadas/exportadas ou não. A nova versão da ferramenta permite agora que as associações definidas nos objetos sejam exportadas para o arquivo CSV e posteriormente importadas para novos objetos do E3. Na exportação, para cada associação é inserida uma linha a mais no arquivo CSV, identificando o tipo de associação; para cada propriedade da associação é criada uma coluna extra no arquivo. Na importação, para cada linha identificada, é gerada uma associação na propriedade correspondente.

collection: Define se as coleções dos objetos serão importadas/exportadas ou não. As coleções podem ser exportadas, gerando uma linha no arquivo CSV para cada uma. Da mesma forma, as propriedades das coleções geram novas colunas no arquivo. No caso da importação, não é possível criar uma coleção, apenas alterar os valores das propriedades. Logo, é preciso que a coleção esteja previamente criada no objeto para só então realizar a operação de importação.

objectduplicated: Define qual o comportamento adotado quando é importado um objeto com o mesmo nome de um outro já existente. Deve-se definir se o objeto antigo deverá ser sobrescrito, se deverá ser criado um novo objeto com um novo nome, ou se o objeto existente será mantido.

bindduplicated: Define qual o comportamento adotado quando é importada uma associação em uma propriedade que já possui uma. Deve-se definir se a associação antiga deverá ser substituída pela nova ou não.
[Configuration]
separator=','
root=true
link=true
collection=true
objectduplicated=askalways
bindduplicated=askalways 


[Types]

Esta seção relaciona os identificadores de tipos de objetos com as classes reais. Cada identificador listado na variável types da seção [Header], que não for igual a um nome de classe de objeto do E3, deverá estar documentado nesta seção. Será criada uma variável para cada um dos identificadores, no formato <identificador> = <nome da classe>.
[Types]
Tag=IOTag
Bloco=IOBlock
Elemento=IOBlockElement 


[Columns]

Relaciona os identificadores de nomes de colunas com os nomes de propriedades. Cada identificador listado na variável header da seção [Header], que não for igual a um nome de propriedade, deverá estar documentado nesta seção. Será criada uma variável para cada um dos identificadores, no formato <identificador> = <nome da propriedade>.
[Columns]
N1/B1=N1,B1
N2/B2=N2,B2
N3/B3=N3,B3
N4/B4=N4,B4 


[Filter]

Nesta seção devem ser definidas quais as classes de objetos que deverão ser importadas ou exportadas. As variáveis dessa seção são mostradas a seguir. Apenas uma das duas pode ser definida.

include: Nesta variável devem ser listadas as classes de objetos do E3 que podem ser importadas ou exportadas. Ao definir esta variável, significa configurar que apenas as classes listadas aqui serão importadas ou exportadas.

exclude: Nesta variável devem ser listadas as classes de objetos do E3 que não podem ser importadas ou exportadas. Definindo esta variável, configura-se que todas as classes encontradas serão importadas ou exportadas, exceto as classes listadas aqui.
[Filter]
exclude=IOFolder ; importa/exporta tudo, exceto IOFolders 


A seguir, é mostrado um exemplo completo e comentado de um modelo.
[Header]
header=ObjectType,Name,DocString,N1/B1,N2/B2,N3/B3,N4/B4,Scan,AllowRead
types=Tag,Bloco,Elemento

[Configuration]
separator=',' ; utiliza a vírgula como separador de colunas no CSV
root=true ; exporta/importa o objeto-raiz
link=true ; exporta/importa as associações
collection=true ; exporta/importa as coleções
; sempre pergunta o que fazer quando encontrar um objeto duplicado objectduplicated=askalways
; sempre pergunta o que fazer quando encontrar uma associação duplicada bindduplicated=askalways

[Types]
Tag=IOTag ; Tag na coluna ObjectType significa objeto da classe IOTag
Bloco=IOBlock
Elemento=IOBlockElement

[Columns]
; N1/B1 como nome de coluna significa uma das duas propriedades: N1 ou B1
N1/B1=N1,B1
N2/B2=N2,B2
N3/B3=N3,B3
N4/B4=N4,B4

[Filter]
exclude=IOFolder ; importa/exporta tudo, exceto IOFolders 


3) Criando um modelo

A criação de um modelo pode ser feita de duas maneiras: através de um editor de textos comum ou utilizando o Gerenciador de Modelos do E3. Na primeira opção, é necessário conhecer a estrutura do modelo, apresentada na seção anterior. A segunda, apresenta uma interface que facilita a configuração das opções desejadas. Ambas serão abordadas a seguir.


Criando um modelo simples através de um editor de textos

Para criar um modelo com um editor de textos é preciso conhecer a estrutura dos modelos do E3 para saber quais as seções e variáveis que devem ser definidas e garantir a correção da estrutura.

Pode se utilizar qualquer editor de textos, como o Bloco de Notas, por exemplo, e basta seguir algumas regras.

  • Os nomes de seções devem estar obrigatoriamente entre colchetes e sozinhos na linha.
  • Não é feita diferença entre maiúsculas e minúsculas, tanto para os nomes de seções e variáveis como para os valores. Neste ponto é importante lembrar que não são permitidas duas variáveis com o mesmo nome em uma mesma seção, e que apenas o uso de letras maiúsculas e minúsculas não é suficiente para diferenciar um nome de outro.
  • Espaços em branco não são considerados em torno do "=", mas são considerados em torno das vírgulas que separam os valores de uma mesma variável. Por exemplo, no caso da variável header ter a seguinte lista:

[Header]
header=ObjectType, Name 

significa que o nome da coluna é "Name", com um espaço no início. Como isso não é considerado um nome de propriedade, será tratado como um identificador. Se não houver a definição da variável "Name" relacionando-a com a propriedade correta, a coluna será desconsiderada. O correto seria como o que é mostrado a seguir.
[Header]
header=ObjectType, Name
[Columns]
Name = Name ; Note o espaço em branco antes na variável 
ou
[Header]
header=ObjectType,Name ; sem espaço em torno da vírgula 

  • O caractere ";" não pode ser utilizado como parte do nome de um identificador, porque nos modelos esse caractere indica o início de um comentário. A interpretação do arquivo será feita apenas até encontrar o ";" e tudo que estiver após será desconsiderado. Por exemplo:

[Header]
header=ObjectType,Na;me,DocString,Value
[Columns]
Na;me = Name 


Na variável header, o ";" no meio de "Name" faz com que nem a coluna "Na;me", nem as demais colunas (DocString e Value) sejam consideradas. O valor lido efetivamente para a variável header é apenas "ObjectType,Na".

Além disso, algumas dicas importantes são mostradas a seguir.

  • Linhas em branco são ignoradas na interpretação do arquivo. Então é possível utilizá-las à vontade para melhor organizar o modelo.
  • Mesmo que alguma seção ou variável seja escrita de maneira incorreta, as operações de importação e exportação não irão falhar (exceto se a seção [Header] ou a variável header estiverem incorretas numa exportação). As variáveis possuem valores padrão, que são assumidos quando elas não forem definidas. Por isso, quando a operação não for executada conforme o esperado, aconselha-se verificar a maneira como as variáveis foram escritas no modelo.



Criando um modelo através do Gerenciador de Modelos do E3 Studio

Para utilizar o Gerenciador de Modelos do E3, basta clicar na opção Importar/Exportar, e uma vez aberta a janela da opção, clicar no botão [Configurar...]. As abas disponíveis para configuração são mostradas a seguir. Para finalizar a criação do modelo, basta clicar no botão [OK], estando em qualquer aba.


Aba Configurações

Nesta aba é possível definir as opções válidas tanto para importação quanto para exportação. Estas opções incluem a configuração do separador de colunas e da importação ou exportação do objeto-raiz, das associações e das coleções, além de definir o nome do modelo, caso o usuário deseje salvá-lo para utilizá-lo novamente.


Figura 1: Aba Configurações


Aba Importação

Nesta aba é possível definir as opções válidas apenas para importação. Estas opções incluem definir o comportamento quando estiver sendo importado um objeto ou uma associação duplicados.


Figura 2: Aba Importação


Aba Filtros

É possível definir aqui quais as classes que devem ser importadas ou quais as classes que não devem. A lista das classes é preenchida através do botão [Alterar...].


Figura 3: Aba Filtros


Aba Identificadores

Nesta aba são definidos os identificadores para as classes de objetos. O preenchimento não é obrigatório, apenas se alguma classe deve ser importada ou exportada utilizando um identificador no lugar do próprio nome.


Figura 4: Aba Identificadores


Aba Propriedades

Nesta aba são listadas as propriedades que deverão ser importadas ou exportadas. A lista deverá estar na ordem correta para a opção de exportação. No caso da importação, a ordem é definida pelo próprio arquivo CSV e não pelo modelo. O preenchimento é obrigatório para a exportação.

No caso da importação, só é necessário preencher esta lista apenas se alguma coluna estiver utilizando um identificador no lugar do nome da propriedade. Assim, a variável que define o identificador será criada corretamente. Aqui também é possível definir o agrupamento de duas ou mais propriedades numa mesma coluna.


Figura 5: Aba Propriedades


4) Dicas para melhor utilização dos modelos e da ferramenta

O separador de colunas

O arquivo CSV tem sua estrutura baseada em colunas. Para a identificação correta dessas colunas, é importante que a definição do separador entre elas esteja coerente na exportação e na importação. O mesmo separador de colunas deve ser usado em ambas as operações, para que seja possível importar corretamente os objetos. Uma opção é utilizar o separador de listas configurado no Windows. Essa configuração é feita através do menu Iniciar – Configurações – Painel de Controle – Opções Regionais e de Idioma.


Figura 6: Configurações regionais do Windows


Como esta configuração varia de computador para computador, é importante conferir se o separador utilizado no momento da geração do arquivo CSV é o mesmo configurado quando estiver sendo feita a importação.

Outra opção é configurar manualmente o separador de colunas, através da variável Separator, na seção [Configuration] do modelo. Neste caso, a configuração fica no modelo, e basta utilizar o mesmo modelo na exportação e na importação para garantir que o separador está configurado corretamente.


Agrupe colunas e torne seu arquivo mais versátil

A nova ferramenta traz uma opção prática para diminuir a quantidade de colunas do arquivo CSV. Algumas vezes, quando são exportados objetos diferentes em um mesmo arquivo CSV, pode haver o caso de se ter propriedades que não são comuns aos diferentes objetos, gerando arquivos com diversas colunas em branco. Por exemplo, considerando o caso de tags e blocos de comunicação, têm-se as propriedades N1 a N4 para tags que não são propriedades dos blocos. Por outro lado, as propriedades B1 a B4 dos blocos não são propriedades de tags. Um arquivo CSV para essas oito propriedades seria:

ObjectType;Name ;N1;N2;N3;N4;B1;B2;B3;B4
IOTag ;Tag1 ;1 ;1 ;1 ;1 ; ; ; ;
IOBlock ;Bloco1; ; ; ; ;1 ;1 ;1 ;1 


Esse arquivo poderia ser reduzido para apenas 6 colunas se as propriedades N1 a N4 forem combinadas com as propriedades B1 a B4. Isso é possível porque os objetos que possuem uma propriedade não possuem a outra.

Se as propriedades combinadas forem comuns a mais de um tipo de objeto importado ou exportado, haverá perda de informação porque o valor de uma propriedade irá sobrescrever o da outra.

Para combinar as propriedades, basta selecioná-las e clicar no botão [Agrupar propriedades]. Após, edite o nome da coluna como desejar.


Figura 7: Opção de agrupar propriedades em uma mesma coluna


O modelo gerado será como o mostrado a seguir:
ObjectType;Name ;N1/B1;N2/B2;N3/B3;N4/B4
IOTag ;Tag1 ;1 ;1 ;1 ;1
IOBlock ;Bloco1;1 ;1 ;1 ;1 


Importe facilmente arquivos gerados pelo Elipse SCADA

O Elipse SCADA tem a opção de exportar Tags, Telas e Alarmes para arquivos .E2F. O E3 importa facilmente essas informações, sem a necessidade de utilizar um modelo, bastando observar alguns detalhes:

  • A importação de Tags de Comunicação ou Tags OPC deve ser feita a partir de um Driver de Comunicação ou Driver OPC, respectivamente, com o mesmo nome dos Drivers do Elipse SCADA, para que as referências para os Tags sejam importadas corretamente.
  • A importação de Tags RAM e Demo no E3 deve ser feita a partir de um Servidor de Dados chamado "Dados", também para garantir que as referências fiquem corretas.
  • Quando o Elipse SCADA faz a exportação das tags, também é criado outro arquivo .E2F, com o sufixo _Alarms, que contém a configuração de alarmes. A importação desses alarmes no E3 deve ser feita a partir de uma Área previamente criada dentro de um Configurador de Alarmes. Se os tags do Elipse SCADA já tiverem sido importados corretamente, as referências nestes alarmes aparecerá em azul, indicando que o link está correto.
  • Antes de importar as Telas do Elipse SCADA no E3 pela primeira vez, é necessário registrar no E3 Studio os controles ActiveX dos objetos de Tela E2Controls. Para isso, selecione a opção Ferramentas—Adicionar ActiveX, e selecione na lista um dos controles da biblioteca E2Controls, por exemplo, E2Animation, clicando a seguir em [OK].



Mantenha sempre um modelo básico para cada objeto

É interessante manter sempre um modelo para cada um dos objetos que mais frequentemente serão importados ou exportados. Por exemplo, um modelo para Drivers de Comunicação, um modelo para Alarmes, um modelo para Telas, outro para Servidores de Dados, e assim por diante, de acordo com as necessidades de cada usuário. Esses modelos básicos tornam mais fácil a configuração da ferramenta.

Eles podem conter, por exemplo, todas as propriedades que devem ser utilizadas, e quais os tipos de objetos desejados. Quando for iniciado um novo procedimento de importação ou exportação, basta selecionar o modelo básico e então clicar no botão [Configurar...]. Todas as configurações que forem encontradas no modelo básico já serão carregadas.

Na opção Salvar as alterações deste modelo em um arquivo INI, escolha um novo nome para o modelo, para que o básico não seja sobrescrito, e altere apenas o que for necessário.


Importe arquivos de tags gerados pelas versões antigas do E3 Studio

O formato dos arquivos CSV gerados pelas versões antigas do E3 na exportação de tags também é suportado pela ferramenta atual, bastando configurar um modelo corretamente. A Elipse Software fornece um modelo apropriado para essa importação, que se encontra no diretório de instalação do E3, na pasta Templates. Mas, caso necessite, a configuração de um novo modelo é simples.

No Gerenciador de Modelos do E3 Studio, siga os seguintes procedimentos:

1) Na aba Configurações, selecione o separador de listas do Windows como separador de colunas, desabilite as opções de importar/exportar o objeto-raiz, as associações e as coleções, e escolha um nome para o modelo.
2) Na aba Importação, deixe a configuração padrão.
3) Na aba Filtros, selecione a opção Incluir apenas estes objetos e clique no botão [Alterar...] para incluir as classes IOTag, IOBlock e IOBlockElement.
4) Na aba Identificadores, defina três identificadores de tipos. Clique no botão [+] e inclua as classes IOTag, IOBlock e IOBlockElement, e defina os identificadores PLC Tag, Block Tag e Element, respectivamente.


Figura 8: Definição dos identificadores para as classes de objetos


5) Na aba Propriedades, defina as propriedades que a versão antiga (2.0 ou anterior) exporta, e relacione com os identificadores utilizados no arquivo CSV. Para ObjectType, associe o identificador type. Para as demais, siga as instruções abaixo:


Figura 9: Escolha das propriedades


  • Clique no botão [+] para adicionar as propriedades.
  • Selecione a classe IOTag e inclua as propriedades Name, DocString, N1, N2, N3, N4, Scan, AllowRead, AllowWrite, EnableScaling, DeviceLow, DeviceHigh, EULow, EUHigh, ParamDevice, ParamItem.
  • Selecione a classe IOBlock e inclua as propriedades B1, B2, B3, B4 e Size.
  • Por fim, selecione a classe IOBlockElement e inclua a propriedade Index.
  • Selecione as propriedades N e B aos pares e clique no botão [Agrupar propriedades]. Depois altere o nome da coluna de cada uma para N1/B1, N2/B2, etc..
  • Altere o nome das colunas das seguintes propriedades: 

        - DocString para Description.
        - Scan para ScanTime.
        - AdviseType para Advise.
        - EnableScaling para Scaling.
        - EUHigh para High2.

6) Clique no botão [OK]. O modelo será salvo e está pronto para ser utilizado pela ferramenta. O arquivo com extensão .INI deve estar semelhante ao mostrado a seguir:

[HEADER]
Header=Type,Name,Description,N1/B1,N2/B2,N3/B3,N4/B4,ScanTime,AllowRead, AllowWrite,Advise,Scaling,DeviceLow,DeviceHigh,EULow,EUHigh,EU,Size, Index,ParamDevice,ParamItem Types=Element,Block Tag,PLC Tag

[TYPES]
Element=IOBlockElement
Block Tag=IOBlock
PLC Tag=IOTag

[COLUMNS]
N1/B1=N1,B1
N2/B2=N2,B2
N3/B3=N3,B3
N4/B4=N4,B4
Scaling=EnableScaling
ScanTime=Scan
Type=ObjectType
Advise=AdviseType
Description=DocString

[CONFIGURATION]
Root=FALSE
Link=FALSE
Collection=FALSE
ObjectDuplicated=AskAlways
BindDuplicated=AskAlways

[FILTER]
Include=IOTag,IOBlock,IOBlockElement 


Troque o tipo dos objetos em quatro passos

Até a versão 2.0 não havia uma maneira de efetuar a troca do tipo de um objeto sem ser destruindo o antigo e criando um novo. Com isso, perdia-se a configuração das propriedades que já havia sido feita, trabalho que deveria ser refeito no objeto novo. Com a nova ferramenta de importação e exportação, criou-se uma possibilidade para trocar o tipo de um objeto sem perder as propriedades configuradas.

Veja como executar este procedimento em apenas quatro passos.


Figura 10: Aplicação para o exemplo

1) Exporte os objetos que deseja alterar o tipo, criando um modelo que inclua todas as propriedades daquele tipo de objeto. No exemplo, exporte os objetos-filhos da TelaInicial. Na configuração do modelo, inclua todas as propriedades da classe DrawRect. Para facilitar, crie um identificador para a classe DrawRect na aba Identificadores do Gerenciador de Modelos, por exemplo "Objeto".
2) Altere o modelo utilizado para a exportação, substituindo o tipo do objeto. No exemplo, substitua DrawRect por outro, por exemplo, DrawCircle. Faça isso simplesmente alterando o valor da variável "Objeto" no modelo, utilizando um editor de textos. Substitua "Objeto = DrawRect" por "Objeto = DrawCircle", e salve o modelo.
3) Apague os objetos antigos no E3. No exemplo, remova os quatro retângulos filhos da TelaInicial.
4) Importe os objetos do arquivo CSV gerado no passo 1 utilizando o modelo alterado no passo 2. No exemplo, serão criados quatro novos círculos, porém mantendo as propriedades definidas para os retângulos, como cor, posição, tamanho, etc.


Figura 11: Aplicação exemplo após a troca do tipo dos objetos


É importante ressaltar que a vantagem desse procedimento é observada quando os objetos em questão compartilham uma série de propriedades. Objetos totalmente distintos não terão como serem aproveitados neste caso. Um uso interessante para isso pode ser o caso de uma Tela contendo diversos XControls cuja biblioteca que os define foi perdida. Sabendo o significado das propriedades definidas para o XControl, é possível criar uma nova biblioteca, definir o ElipseX novamente e através deste passo-a-passo, substituir na Tela os ElipseX antigos pelos novos.


5) Conclusão

Até a versão 2.0 do E3, os únicos objetos que podiam ser importados e exportados eram os Drivers de Comunicação e as Áreas de alarmes, e apenas as propriedades dos objetos filhos eram consideradas. Os arquivos gerados nestes dois casos, embora ambos fossem do tipo CSV, eram completamente diferentes, dificultando o entendimento das ferramentas.

A principal melhoria desta ferramenta na versão 2.5 do E3 é ela estar disponível para qualquer tipo de objeto, utilizando o mesmo procedimento e o mesmo formato de arquivo CSV para qualquer objeto. Além disso, é possível incluir associações e coleções juntamente com as propriedades, e também importar ou exportar as propriedades do próprio objeto a partir do qual esta sendo feita a operação, permitindo gerar cópias idênticas dos objetos exportados.

Com a utilização de modelos, a nova ferramenta de importação e exportação tornou-se mais versátil, permitindo uma rápida adaptação a qualquer tipo de objeto do E3, e mais configurável, adaptando-se melhor a cada necessidade do usuário.



Related Articles

No related articles were found.

Attachments

No attachments were found.

Visitor Comments

No visitor comments posted. Post a comment

Post Comment for "Criando modelos para a ferramenta de importação e exportação do E3 Studio"

To post a comment for this article, simply complete the form below. Fields marked with an asterisk are required.

   Name:
   Email:
* Comment:
* Enter the code below:

 

Article Details

Last Updated
13th of October, 2008

Autor
Sheila Moreira Souza

Would you like to...

Print this page  Print this page

Email this page  Email this page

Post a comment  Post a comment

 Subscribe me

Subscribe me  Add to favorites

Remove Highlighting Remove Highlighting

Edit this Article

Quick Edit

Export to PDF


User Opinions

No users have voted.

How would you rate this answer?




Thank you for rating this answer.

Continue