× Linguagem de Programação ADVPL

Perguntas Erro na gravação da tabela

Mais
10 anos 11 meses atrás #14428 por plautojr
Seguinte pessoal, criei uma tela na qual alimenta uma tabela de nome ZA5, que tem 41 campos, a tela monta o aheader e o acols, e teoricamente alimentaria suas linhas, oque acontece é que eu alimento na tela 5 linhas por exemplo, ele grava o primeiro campo da linha "1", e o restante dos campos da ultima linha, o restante ele não grava, grava apenas uma linha no banco.
Deu pra entender ?
vou colar aqui a parte do reclock, agradeço

For nI := 1 To Len(oBrw1:aCols)
IF ZA5->(dbSeek(xFilial("ZA5") + cNitem2 + M->C5_NUM ))

IF oBrw1:aCols[nI][Len (aHeader2) +1]
RecLock( "ZA5" , .F. )
ZA5->(dbdelete())
ZA5->(MsUnLock())
ELSE
RecLock( "ZA5" , .F. ) //CORTEI UMAS LINHAS AQUI
//PRA NÃO FICAR MUITO GRANDE.
ZA5->ZA5_DESC := oBrw1:aCols[nI][2]
ZA5->ZA5_ESTKMI := oBrw1:aCols[nI][3]
ZA5->ZA5_ESTKMF := oBrw1:aCols[nI][4]
ZA5->ZA5_LARGFX := oBrw1:aCols[nI][5]
ZA5->ZA5_LADO := oBrw1:aCols[nI][6]
ZA5->ZA5_ESPLD := oBrw1:aCols[nI][7]
ZA5->ZA5_QTDLD := oBrw1:aCols[nI][8]
ZA5->ZA5_BORDO := oBrw1:aCols[nI][9]
ZA5->ZA5_ESPBOR := oBrw1:aCols[nI][10]
ZA5->ZA5_QTDBOR := oBrw1:aCols[nI][11]
ZA5->ZA5_LEG := oBrw1:aCols[nI][12]
ZA5->ZA5_AREALE := oBrw1:aCols[nI][13]
ZA5->ZA5_QTDLEG := oBrw1:aCols[nI][14]
ZA5->ZA5_SETA := oBrw1:aCols[nI][15]
ZA5->ZA5_QTDSET := oBrw1:aCols[nI][16]
ZA5->ZA5_ZBR := oBrw1:aCols[nI][17]
ZA5->ZA5_QTDZBR := oBrw1:aCols[nI][18]
ZA5->ZA5_LIVRE := oBrw1:aCols[nI][19]
ZA5->ZA5_QRET := oBrw1:aCols[nI][38]

ZA5->(MsUnLock())
ENDIF

Else


IF !Empty(oBrw1:aCols[nI][1])
RecLock( "ZA5" , .T. )

ZA5->ZA5_FILIAL := xFilial("ZA5")
ZA5->ZA5_COD := oBrw1:aCols[nI][1]
ZA5->ZA5_DESC := oBrw1:aCols[nI][2]
ZA5->ZA5_ESTKMI := oBrw1:aCols[nI][3]
ZA5->ZA5_ESTKMF := oBrw1:aCols[nI][4]
ZA5->ZA5_LARGFX := oBrw1:aCols[nI][5]
ZA5->ZA5_LADO := oBrw1:aCols[nI][6]
ZA5->ZA5_ESPLD := oBrw1:aCols[nI][7]
ZA5->ZA5_QTDLD := oBrw1:aCols[nI][8]
ZA5->ZA5_BORDO := oBrw1:aCols[nI][9]
ZA5->ZA5_ESPBOR := oBrw1:aCols[nI][10]
ZA5->ZA5_QTDBOR := oBrw1:aCols[nI][11]
ZA5->ZA5_LEG := oBrw1:aCols[nI][12]
ZA5->ZA5_AREALE := oBrw1:aCols[nI][13]
ZA5->ZA5_QTDLEG := oBrw1:aCols[nI][14]
ZA5->ZA5_SETA := oBrw1:aCols[nI][15]
ZA5->ZA5_QTDSET := oBrw1:aCols[nI][16]
ZA5->ZA5_ZBR := oBrw1:aCols[nI][17]
ZA5->ZA5_QTDZBR := oBrw1:aCols[nI][18]
ZA5->ZA5_LIVRE := oBrw1:aCols[nI][19]
ZA5->ZA5_NPED := M->C5_NUM
ZA5->ZA5_NITEM := cNitem2
ZA5->(MsUnLock())
EndIf
EndIf
Next nI
msginfo("Alterado com Sucesso")
oDlg1:Refresh()
oDlg1:end()
Return

Jesus é Caminho

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 11 meses atrás #14448 por plautojr
Respondido por plautojr no tópico Erro na gravação da tabela
AJUDA AEE POVO PLSSS

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 11 meses atrás #14490 por lalberto
Respondido por lalberto no tópico Erro na gravação da tabela
For nI := 1 To Len(oBrw1:aCols)
cnItem2 := StrZero(nI,2) // ITEM

IF ZA5->(dbSeek(xFilial("ZA5") + cNitem2 + M->C5_NUM ))
IF oBrw1:aCols[nI][Len (aHeader2) +1]
RecLock( "ZA5" , .F. )
ZA5->(dbdelete())
ZA5->(MsUnLock())
ELSE
RecLock( "ZA5" , .F. ) //CORTEI UMAS LINHAS AQUI
//PRA NÃO FICAR MUITO GRANDE.
ZA5->ZA5_DESC := oBrw1:aCols[nI][2]
ZA5->ZA5_ESTKMI := oBrw1:aCols[nI][3]
ZA5->ZA5_ESTKMF := oBrw1:aCols[nI][4]
ZA5->ZA5_LARGFX := oBrw1:aCols[nI][5]
ZA5->ZA5_LADO := oBrw1:aCols[nI][6]
ZA5->ZA5_ESPLD := oBrw1:aCols[nI][7]
ZA5->ZA5_QTDLD := oBrw1:aCols[nI][8]
ZA5->ZA5_BORDO := oBrw1:aCols[nI][9]
ZA5->ZA5_ESPBOR := oBrw1:aCols[nI][10]
ZA5->ZA5_QTDBOR := oBrw1:aCols[nI][11]
ZA5->ZA5_LEG := oBrw1:aCols[nI][12]
ZA5->ZA5_AREALE := oBrw1:aCols[nI][13]
ZA5->ZA5_QTDLEG := oBrw1:aCols[nI][14]
ZA5->ZA5_SETA := oBrw1:aCols[nI][15]
ZA5->ZA5_QTDSET := oBrw1:aCols[nI][16]
ZA5->ZA5_ZBR := oBrw1:aCols[nI][17]
ZA5->ZA5_QTDZBR := oBrw1:aCols[nI][18]
ZA5->ZA5_LIVRE := oBrw1:aCols[nI][19]
ZA5->ZA5_QRET := oBrw1:aCols[nI][38]

ZA5->(MsUnLock())
ENDIF

Else
IF !Empty(oBrw1:aCols[nI][1])
RecLock( "ZA5" , .T. )
ZA5->ZA5_FILIAL := xFilial("ZA5")
ZA5->ZA5_COD := oBrw1:aCols[nI][1]
ZA5->ZA5_DESC := oBrw1:aCols[nI][2]
ZA5->ZA5_ESTKMI := oBrw1:aCols[nI][3]
ZA5->ZA5_ESTKMF := oBrw1:aCols[nI][4]
ZA5->ZA5_LARGFX := oBrw1:aCols[nI][5]
ZA5->ZA5_LADO := oBrw1:aCols[nI][6]
ZA5->ZA5_ESPLD := oBrw1:aCols[nI][7]
ZA5->ZA5_QTDLD := oBrw1:aCols[nI][8]
ZA5->ZA5_BORDO := oBrw1:aCols[nI][9]
ZA5->ZA5_ESPBOR := oBrw1:aCols[nI][10]
ZA5->ZA5_QTDBOR := oBrw1:aCols[nI][11]
ZA5->ZA5_LEG := oBrw1:aCols[nI][12]
ZA5->ZA5_AREALE := oBrw1:aCols[nI][13]
ZA5->ZA5_QTDLEG := oBrw1:aCols[nI][14]
ZA5->ZA5_SETA := oBrw1:aCols[nI][15]
ZA5->ZA5_QTDSET := oBrw1:aCols[nI][16]
ZA5->ZA5_ZBR := oBrw1:aCols[nI][17]
ZA5->ZA5_QTDZBR := oBrw1:aCols[nI][18]
ZA5->ZA5_LIVRE := oBrw1:aCols[nI][19]
ZA5->ZA5_NPED := M->C5_NUM
ZA5->ZA5_NITEM := cNitem2
ZA5->(MsUnLock())
EndIf
EndIf
Next nI
msginfo("Alterado com Sucesso")
oDlg1:Refresh()
oDlg1:end()
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.

Tempo para a criação da página:0.112 segundos
Joomla templates by a4joomla