- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- ERROR GRABACION FACTURA ENTRADA/REMISION
×
Linguagem de Programação ADVPL
Perguntas ERROR GRABACION FACTURA ENTRADA/REMISION
- luis10075
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 98
- Obrigados Recebidos: 1
11 anos 5 meses atrás - 11 anos 5 meses atrás #14634
por luis10075
ERROR GRABACION FACTURA ENTRADA/REMISION foi criado por luis10075
Hola colegas:
Realice una rutina para Recepcion de Materiales, con Escaner de codigo de barras, para llenar en automatico los items de Fatura Entrada (MATA101N) y Remision (MATA102N)
Pero tengo un problema al Gravar los datos en SD2 y SD1. Es el que sigue:
THREAD ERROR (acer, NEW_MARK_LAP) 07/06/2013 11:44:19
array out of bounds [1] of [0] on MAFISRETSFC(MATXFIS.PRX) 27/08/2012 14:57:16 line : 18264
Anexo Imagen, como puedo hacer para actualizar el pie de documento (cuadro rojo), espero alguien me pueda ayudar a solucionarlo, muchas gracias por la ayuda.
Abrazos
Realice una rutina para Recepcion de Materiales, con Escaner de codigo de barras, para llenar en automatico los items de Fatura Entrada (MATA101N) y Remision (MATA102N)
Pero tengo un problema al Gravar los datos en SD2 y SD1. Es el que sigue:
THREAD ERROR (acer, NEW_MARK_LAP) 07/06/2013 11:44:19
array out of bounds [1] of [0] on MAFISRETSFC(MATXFIS.PRX) 27/08/2012 14:57:16 line : 18264
Anexo Imagen, como puedo hacer para actualizar el pie de documento (cuadro rojo), espero alguien me pueda ayudar a solucionarlo, muchas gracias por la ayuda.
Abrazos
Ultima edição: 11 anos 5 meses atrás por luis10075. Razão: inclusion imagen
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
11 anos 5 meses atrás #14646
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico ERROR GRABACION FACTURA ENTRADA/REMISION
Você está usando um execauto para a gravação ?, o ideal será colocar o bloco de código do fonte aonde vc efetua esta gravação para entendermos melhor o problema.
Abraços.
Abraços.
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- luis10075
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 98
- Obrigados Recebidos: 1
11 anos 5 meses atrás #14669
por luis10075
Respondido por luis10075 no tópico ERROR GRABACION FACTURA ENTRADA/REMISION
Hola Luiz Buen dia, antes que otra cosa muchas gracias por responder el topico.
No estoy usando execauto, solo estoy pasando valores de un Browse personalizado (anexo imagen)
Envio tambien el bloque de código donde asigno valores al ACOLS de SD2 (Fatura entrada/Remision)
Static Function FILLGRID()
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
NEXT X
Close(oDglBar)
Return
No estoy usando execauto, solo estoy pasando valores de un Browse personalizado (anexo imagen)
Envio tambien el bloque de código donde asigno valores al ACOLS de SD2 (Fatura entrada/Remision)
Static Function FILLGRID()
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
NEXT X
Close(oDglBar)
Return
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
11 anos 5 meses atrás #14702
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico ERROR GRABACION FACTURA ENTRADA/REMISION
Static Function FILLGRID()
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
If ExistTrigger("D1_TES")
RunTrigger(2,N)
EvalTrigger()
EndIf
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
NEXT X
Close(oDglBar)
Return
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
If ExistTrigger("D1_TES")
RunTrigger(2,N)
EvalTrigger()
EndIf
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
NEXT X
Close(oDglBar)
Return
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- luis10075
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 98
- Obrigados Recebidos: 1
11 anos 5 meses atrás #14720
por luis10075
Respondido por luis10075 no tópico ERROR GRABACION FACTURA ENTRADA/REMISION
Hola Luiz:
Tente con el codigo que indicas y tal parece que no entra al IF, inclui un msgalert para verificar y no lo muestra
If ExistTrigger("D1_TES")
msgalert("runtrigger")
RunTrigger(2,N)
EvalTrigger()
EndIf
Tente con el codigo que indicas y tal parece que no entra al IF, inclui un msgalert para verificar y no lo muestra
If ExistTrigger("D1_TES")
msgalert("runtrigger")
RunTrigger(2,N)
EvalTrigger()
EndIf
Por favor Acessar ou Registrar para participar da conversa.
- luis10075
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 98
- Obrigados Recebidos: 1
11 anos 5 meses atrás #14732
por luis10075
Respondido por luis10075 no tópico ERROR GRABACION FACTURA ENTRADA/REMISION
Aqui la solucion a mi problema , gracias por la orientacion Luiz
Static Function FILLGRID()
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
If ExistTrigger("D1_TES")
RunTrigger(2,N)
EvalTrigger()
EndIf
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
MaColsToFis(aHeader,aCols,,"MT100",.T.)
Eval(bDoRefresh) // Atualiza o folder financeiro.
Eval(bListRefresh)
NEXT X
Close(oDglBar)
Return
Static Function FILLGRID()
Local nTe:=0
Private nOpc := 1
FOR X:=1 TO cGet2
nTe:=POSICIONE("SB1",1,XFILIAL("SB1")+PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] ),"B1_TE")
aCols[X][GdFieldPos( "D1_ITEM", aHeader )] := StrZero(X,4) //"0002"
aCols[X][GdFieldPos( "D1_COD", aHeader )] := PADR( aWBrowse1[ x , 1 ], TamSX3("B1_COD")[1] )
aCols[X][GdFieldPos( "D1_UM", aHeader )] := POSICIONE("SB1",1,XFILIAL("SB1")+ALLTRIM(aWBrowse1[ x , 1 ]),"B1_UM")
aCols[X][GdFieldPos( "D1_QUANT", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_VUNIT", aHeader )] := aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TOTAL", aHeader )] := aWBrowse1[ x , 3 ] * aWBrowse1[ x , 4 ]
aCols[X][GdFieldPos( "D1_TES", aHeader )] := nTe
aCols[X][GdFieldPos( "D1_CF", aHeader )] := POSICIONE("SF4",1,XFILIAL("SF4")+PADR( nTe , TamSX3("F4_CODIGO")[1] ),"F4_CF")
aCols[X][GdFieldPos( "D1_TES", aHeader )] := "001"
aCols[X][GdFieldPos( "D1_LOJA", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOCAL", aHeader )] := "01"
aCols[X][GdFieldPos( "D1_LOTECTL", aHeader )] := aWBrowse1[ x , 5 ]
aCols[X][GdFieldPos( "D1_DTVALID", aHeader )] := CTOD( aWBrowse1[ x , 6 ] )
aCols[X][GdFieldPos( "D1_FORNECE", aHeader )] := M->F1_FORNECE
aCols[X][GdFieldPos( "D1_QTDACLA", aHeader )] := aWBrowse1[ x , 3 ]
aCols[X][GdFieldPos( "D1_SERIORI", aHeader )] := aWBrowse1[ x , 7 ]
If ExistTrigger("D1_TES")
RunTrigger(2,N)
EvalTrigger()
EndIf
oGetDados:AddLine(aCols[X][GdFieldPos( "D1_ITEM", aHeader )] ) //Adiciona uma linha nova
oGetDados:oBrowse:nColPos:= GdFieldPos("D1_ITEM", aHeader ) // Esse C6_ITEM
oGetDados:oBrowse:Refresh()
MaColsToFis(aHeader,aCols,,"MT100",.T.)
Eval(bDoRefresh) // Atualiza o folder financeiro.
Eval(bListRefresh)
NEXT X
Close(oDglBar)
Return
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- ERROR GRABACION FACTURA ENTRADA/REMISION
Tempo para a criação da página:0.198 segundos