Ação no botão Confirmar - MVC Modelo 2

Pessoal antes de qualquer coisa , FELIZ NATAL !! FELIZ ANO NOVO !!! ..

Preciso da ajuda de voces , fiz uma tela modelo2 em MVC , e gostaria de carregar valores em um determinado campo na Grid de acordo com a quantidade de alterações na linha , vejam o trecho do codigo que deveria fazer isso:

User Function CorreGrid(_oView,_oModel)

Local cC2status:= "APTO"

Local nLineAlt := VAL(_oModelD:GetValue('ZR_AJUSTE'))

_oModel:= FWModelActivate()

_oModelD := _oModel:GetModel( 'SZRDETAIL' )

IF _oModelD:GetOperation() == 4

For nLn := 1 To _oModelD:Length()

_oModelD:GoLine(nLn)

If _oModelD:IsUpdated()

nLineAlt++

_oModelD:LoadValue('ZR_AJUSTE', Transform(nLineAlt, "@!" ))

_oView:Refresh()

_oModelD:SetLine(1)

EndIf

Next nLn

Endif

A função acima eu estou chamando na ViewDef na propriedade : _oView:SetViewAction( 'BUTTONOK' ,U_CorreGrid()).

Se vcs olharem a funcão eu preencho o campo ZR_AJUSTE de acordo com a alteração na linha .

Estou com dois problemas aí :

1° após fazer o LoadValue no ZR_AJUSTE , eu faço um refresh na view , no ato da confirmação da alteração eu consigo ver o campo receber o valor da variavel nLineAlt , mais por algum motivo ele não grava o valor do campo no BD , a impressão que tenho é que o campo recebe o valor segundos depois da gravação.

2° o valor da variavel nLineAlt no campo ZR_AJUSTE , está sendo somando em todas as linhas , como faço pra incrementar apenas na linha que foi alterada ?

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags acaobotaoconfirmar ou faça a sua própria pergunta.