× Linguagem de Programação ADVPL

Perguntas Erro na gravação da tabela

Mais
11 anos 6 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
11 anos 6 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
11 anos 6 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.127 segundos
Joomla templates by a4joomla