FAQs - Suporte técnico

Cross Segmento - TOTVS Backoffice Linha Protheus - ADVPL - Montar grid utilizando GDDeleted

Dúvida
Como utilizar montar uma grid utilizando a função GDDeleted()?

Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - ADVPL - A partir da versão 12.1.17

Solução

// BIBLIOTECAS NECESSÁRIAS
#Include "TOTVS.ch"

//------------------------------------------------------
// EXIBE GRID PARA VALIDAÇÃO DE GDDELETED()
//------------------------------------------------------
User Function T230GDDEL()
Local nX        As Numeric
  Private aHeader As Array
  Private aCols   As Array
  Private oGet    As Object
  Private n       As Numeric

// INICIALIZAÇÃO DE VARIÁVEIS
  nX      := 0
   n       := 0
  aHeader := {}
  aCols   := {}
  oGet    := NIL

   // POSICIONAR NO REGISTRO
  DbSelectArea("SA1")
   DbSetOrder(1)
  DbSeek(FwxFilial("SA1"))

  // MONTAGEM DO CABEÇALHO
  Aadd(aHeader, {"Codigo",        "A1_COD",    "@!", 6,  0, "AllWaysTrue()", "û", "C", "SA1",;
       NIL, NIL, NIL, NIL, NIL, NIL, NIL})
  Aadd(aHeader, {"Loja",          "A1_LOJA",   "@!", 2,  0, "AllWaysTrue()", "û", "C", "SA1",;
      NIL, NIL, NIL, NIL, NIL, NIL, NIL})
  Aadd(aHeader, {"Nome",          "A1_NOME",   "@!", 15, 0, "AllWaysTrue()", "û", "C", "SA1",;
      NIL, NIL, NIL, NIL, NIL, NIL, NIL})
  Aadd(aHeader, {"Nome Reduzido", "A1_NREDUZ", "@!", 10, 0, "AllWaysTrue()", "û", "C", "SA1",;
       NIL, NIL, NIL, NIL, NIL, NIL, NIL})

  // INSERE OS DADOS NA TABELA
  While (!EOF())
       // DEFINE O TAMANHO DO GRID
       AAdd(aCols, Array(Len(aHeader+ 1))
      aCols[Len(aCols)][1:= SA1->A1_COD
      aCols[Len(aCols)][2:= SA1->A1_LOJA
      aCols[Len(aCols)][3:= SA1->A1_NOME
      aCols[Len(aCols)][4:= SA1->A1_NREDUZ

      
// MARCA UMA LINHA COMO DELETADA
       If (Mod(Len(aCols), 2== 1)
           aCols[Len(aCols)][5:= .F.
        Else
           aCols[Len(aCols)][5:= .T.
      EndIf

       // ADICIONA UMA LINHA NO VETOR
DbSkip()
End

// EFETUA A MONTAGEM DA CAIXA DE DIÁLOGO
DEFINE MSDIALOG oDlg TITLE "MSNEWGETDADOS + GD_DELETE" FROM 000,000 TO 027,093 OF oMainWnd
  
// GERA O OBJETO DE GRID
    oGet := MsNewGetDados():New(10, 10, 160, 360, GD_INSERT + GD_DELETE + GD_UPDATE,;
         .T., .T., Space(0), NIL, NIL, NIL, NIL, NIL, .T., oDlg, aHeader, aCols)

  
// DEFINIÇÃO DE BOTÕES
     @017,072 Button "GDDELETED" SIZE 070,020 ACTION TDelecao(@oGet)
 
// DEFINE A LINHA POSICIONADA
    oGet:nAt := Len(aCols)
     n := oGet:nAt
  ACTIVATE MSDIALOG oDlg CENTERED // ATIVA A CAIXA DIÁLOGO
Return (NIL)

//------------------------------------------------------
// RETORNA SE UMA LINHA ESTÁ DELETADA OU NÃO
//------------------------------------------------------
Static Function TDelecao(oGet)
Local lRet := GdDeleted(oGet:nAt)

  
// EXIBE MENSAGEM SOBRE O ESTADO DA LINHA
  MsgInfo("Linha " + AllTrim(Str(oGet:nAt)) + IIf(lRet, " está deletada.", " não está deletada."))
  
// ATUALIZA O FOCO
  oGet:oBrowse:SetFocus()
Return (NIL)


Observações
A função MsNewGetDados() foi descontinuada. 

Saiba mais
GDDeleted
MsNewGetDados

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _