Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Descrição:

Permitir a criação de novo(s) grupo(s) de pergunta (SX1).

Localização:

Antes de chamar o grupo de perguntas da rotina “EDI NotFis Layout 3.1”

Programa Fonte:

GFEA110 - Exportar Notfis

Parâmetros:

Não se aplica.

Retorno:

Não se aplica.


Exemplo: GFEA110GFEA11008

 

1
2
3
4
5
6
7
8
9

User Function GFE11008()


Local aArea := GetArea()
Local aAreaDic := SX1->( GetArea() )
Local aEstrut := {}
Local aStruDic := SX1->( dbStruct() )
Local aDados := {}
Local nI := 0
Local nJ := 0
Local nTam1 := Len( SX1->X1_GRUPO )
Local nTam2 := Len( SX1->X1_ORDEM )

aEstrut := { "X1_GRUPO" , "X1_ORDEM" , "X1_PERGUNT", "X1_PERSPA" , "X1_PERENG" , "X1_VARIAVL", "X1_TIPO" , ;
"X1_TAMANHO", "X1_DECIMAL", "X1_PRESEL" , "X1_GSC" , "X1_VALID" , "X1_VAR01" , "X1_DEF01" , ;
"X1_DEFSPA1", "X1_DEFENG1", "X1_CNT01" , "X1_VAR02" , "X1_DEF02" , "X1_DEFSPA2", "X1_DEFENG2", ;
"X1_CNT02" , "X1_VAR03" , "X1_DEF03" , "X1_DEFSPA3", "X1_DEFENG3", "X1_CNT03" , "X1_VAR04" , ;
"X1_DEF04" , "X1_DEFSPA4", "X1_DEFENG4", "X1_CNT04" , "X1_VAR05" , "X1_DEF05" , "X1_DEFSPA5", ;
"X1_DEFENG5", "X1_CNT05" , "X1_F3" , "X1_PYME" , "X1_GRPSXG" , "X1_HELP" , "X1_PICTURE", ;
"X1_IDFIL" }

aAdd( aDados, {'GFEA110','24,'Numero Viagem de ?','','','MV_CH0','C',08,0,0,'G','U_GFE300VL(1,"GFEA110")','MV_PAR24','','','','','','','','','','','','','','','','','','','','','','','','','GWPREL','','','','',''} )
aAdd( aDados, {'GFEA110','25','Numero Viagem até ?','','','MV_CH0','C',08,0,0,'G','U_GFE300VL(2,"GFEA110")','MV_PAR25','','','','ZZZZZZZZ','','','','','','','','','','','','','','','','','','','','','GWPREL','','','','',''} )

//
// Atualizando dicionário
//
dbSelectArea( "SX1" )
SX1->( dbSetOrder( 1 ) )

For nI := 1 To Len( aDados )
If !SX1->( dbSeek( PadR( aDados[nI][1], nTam1 ) + PadR( aDados[nI][2], nTam2 ) ) )
RecLock( "SX1", .T. )
For nJ := 1 To Len( aDados[nI] )
If aScan( aStruDic, { |aX| PadR( aX[1], 10 ) == PadR( aEstrut[nJ], 10 ) } ) > 0
SX1->( FieldPut( FieldPos( aEstrut[nJ] ), aDados[nI][nJ] ) )
EndIf
Next nJ
MsUnLock()
EndIf
Next nI

RestArea( aAreaDic )
RestArea( aArea )

Return