Manuais
PHC GO Como criar um processamento com base num ficheiro CSV
 

Cenário


A sua empresa está à procura de uma funcionalidade que lhe permita a importação de Números de Série através de um ficheiro .CSV

Para atender a essa necessidade, podemos criar um Processamento de utilizador.
 
 
 

Como configurar


0. Template ficheiro .csv



Antes de começar o desenvolvimento do processamento, deve ser criada a template a ser utilizada no processamento.
Neste exemplo em concreto, vamos criar uma template a ser utilizada no processamento de importação de números de série.
tips_and_updatesDicas

  • Para consultar quais os campos disponíveis por cada entidade do PHC GO, navegue até ao ecrã Dicionário de dados, e de seguida carregue sobre a entidade desejada.

  • A primeira coluna da template tem de obrigatóriamente de ter o nome stamp, servindo esta como índice dos registos presentes na template; as restantes colunas, podem ter o nome que preferir.

No exemplo abaixo, segue a estrutura da template utilizada neste exemplo:
 
1
2
3
stamp;ref;serialnumber;serialnumber2;marca;modelo;obs  => cabeçalho
1;A001;ADU1001;ADU1002;Cordyes;Cord001;Produto muito volumoso => linha de registo
2;A005;ADU5002;ADU5002;Cordyes;Cord001;Produto ligeiramente volumoso => linha de registo


1. Cabeçalho



Nome: Importação de números de série via CSV.

Título: Importação de números de série via CSV.


2. Separador Detalhes



Descrição: Este processamento é responsável pela importação de números de série, de acordo com os dados presentes no ficheiro CSV carregado.

Entidade: Números de Série

check_box É processamento de entidade: Sim
 

3. Separador Dados Iniciais




Variável 1:

  • Número: 1
  • Nome: Ficheiro CSV
  • Tipo: Ficheiro
  • check_box Obrigatório: Sim

 

4. Separador Dados a processar



 
check_box É um programa VB.NET: Sim

Código para obter os dados de origem do processamento:

return fileDatasource


Colunas da tabela de apresentação dos dados de origem:

Ordem da colunaCampoTítuloTexto
1stampOrdemTexto
2refReferência artigoTexto
3serialnumberNúmero de SérieTexto
4serialnumber2Número de Série 2Texto
5marcaMarcaTexto
6modeloModeloTexto
7obsObservaçõesTexto

 
 

5. Separador Dados do arranque



check_box Pode ser executado para todos os registos: Sim

Texto do botão de executar sobre todos os registos: Importar todos os números de série

Texto do botão de executar os registos selecionados: Importar apenas os números de série selecionados
 
 
 

6. Separador Dados de execução



Código da execução:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
For Each selectedItem As Object In SelectedItems  

Dim organizacaoBiz As SDKBiz = SDK.Business.CreateBiz("ma")
Dim orgResult as PHCResult = organizacaoBiz.getNewInstance()
Dim myVO as maVO = GenericVO.getNewInstance(of MAVO)
myVO.ref = selectedItem.ref
myVO.serialnumber = selectedItem.serialnumber
myVO.serialnumber2 = selectedItem.serialnumber2
myVO.marca = selectedItem.marca
myVO.modelo = selectedItem.modelo
myVO.obs = selectedItem.obs


messagesList.Addrange(organizacaoBiz.save(myVO))

If messages.count() = 0 then
successList.Add(New With {
.ref = myVO.ref,
.serialnumber = myVO.serialnumber,
.navigationUrl="mainform/ma/view;stamp=" & myVO.mastamp
})
End If

Next

thumb_up_altBoas Práticas

De modo a evitar possíveis conflitos, é recomendado que as colunas da template tenham o mesmo nome que os respetivos campos do PHC GO.

 

7. Separador Dados do resultado



Ordem da colunaCampoTítuloTipo
1refReferência artigoTexto
2serialnumberNúmero de SérieTexto

 
 
 

Resultado


Após configuração do processamento, este passará a estar disponível no ecrã Processamentos e Emissões ( menu Menu > Processamentos e SAF-T(PT) > Processamentos e Emissões), estando identificado com o nome definido no Cabeçalho.

Ao executar o processamento, caso o ficheiro utilizado esteja corretamente configurado, por cada linha presente no CSV do template, será criada um novo registo no ecrã Números de Série, de acordo com os dados presentes no ficheiro CSV importado.