Bem Vindo Visitante Lista de Usuários

 Todos os Fórums
  ADVPL

Enviar para a impressoraImprimir   

Subject Ponto de entrada seta para baixo compras
Mensagem do Enviar e-mail Abrir o Perfil do usuário BRENO_ENDYMION BRENO_ENDYMION em 9/24/2018 as 16:00 hs
Local: ce   Registrada: 9/24/2018  Postagem: 2
Existe algum ponto de entrada no documento de entrada na inclusão, quando eu aperto a seta para baixo e gera uma nova linha? Eu preciso fazer com que adicione mais de uma linha, para que eu possa preencher, obrigado.

Mensagem do Enviar e-mail Abrir o Perfil do usuário JALBERTO JALBERTO em 9/24/2018 as 16:12 hs
Local: RS   Registrada: 8/20/2009  Postagem: 86
Pelo padrão do Protheus não tem como porque não pode ser editado mais de uma linha ao mesmo tempo, pois existem validações que são feitas na linha, como por exemplo: Produto, Valor Unitário, Quantidade e TES.


Jorge Alberto

Mensagem do Enviar e-mail Abrir o Perfil do usuário BRENO_ENDYMION BRENO_ENDYMION em 9/24/2018 as 16:14 hs
Local: ce   Registrada: 9/24/2018  Postagem: 2
Faz sentido, eu tenho um código que gera linhas para mim, de acordo com o que eu quiser, mas quando essas linhas geradas são editadas, tudo nelas some... Coloquei como gatilho...
Segue o código:
User Function EXP0923(cGrupo)
//MSGALERT("PEGANDO")
     Local i := 0
     Local aCliente := {}
     Local cQuery := ""
     Local nCont := 0
     Private oGetDados
     Private oSize      
     //Local nSizeHeader := 110
     //Local nDiffHeight := 0    
     //nOpcG := 3   
     
     oSize := FwDefSize():New(.T.,,,"")
     
     //FillGetDados(3,"SD1",1,/*cSeek*/,/*{|| &cWhile }*/,,,/*aYesFields*/,/*lOnlyYes*/,,,,/*aHeaderAux*/,/*aColsAux*/,/*bAfterCols*/,/*bbeforeCols*/,/*bAfterHeader*/,/*cAliasQry*/)
     
     //oGetDados := MsGetDados():New(oSize:GetDimension("SD1","LININI"),oSize:GetDimension("SD1","COLINI"),oSize:GetDimension("SD1","LINEND"),oSize:GetDimension("SD1","COLEND"),04,2,"AllwaysTrue","AllwaysTrue",.T.,,,999,"AllwaysTrue","","AllwaysTrue",,,)                                                           
     //oGetDados := MsGetDados():New((nSizeHeader/2)+13+2,1,(oMainWnd:nHeight/2)-nDiffHeight,oMainWnd:nWidth/2-nDiffWidth,nOpcG,cLinOk,cTudoOk,cIniCpos,.T.,aAlGetDad,nFreeze,,nLinhas,cFieldOk,cSuperDel,,cDelOk,oDlg)
     oGetDados := MsGetDados():New(oSize:GetDimension("SD1","LININI"),oSize:GetDimension("SD1","COLINI"),oSize:GetDimension("SD1","LINEND"),oSize:GetDimension("SD1","COLEND"),04,,,,.T.,,,,,,,,,)
     
     if(!Empty(cGrupo))
          //cQuery := "SELECT A1_COD,A1_LOJA,A1_NOME,A1_CONTATO,A1_EST FROM SA1990 WHERE D_E_L_E_T_='' AND A1_FILIAL='" + XFILIAL("SA1") + "' "
          //cQuery += "     AND A1_ZGRUPO = '"+ cGrupo +"'"
          
          //cQuery := "SELECT * FROM "+RetSqlName("SB1")+" WHERE D_E_L_E_T_='' "
          //cQuery += "     AND B1_COD = '"+ ALLTRIM(cGrupo) +"'"
          
          cQuery := "SELECT * FROM "+RetSqlName("SB1")+" WHERE D_E_L_E_T_='' "
          cQuery += "     AND B1_COD = '"+ ALLTRIM(cGrupo) +"'"
          
          If ( SELECT("TMP") ) > 0
               dbSelectArea("TMP")
               TMP->(dbCloseArea())
          EndIf     
          
          TCQUERY cQuery NEW ALIAS "TMP"     
          
          cQuery := "SELECT * FROM "+RetSqlName("SB1")+" WHERE D_E_L_E_T_='' "
          cQuery += "     AND B1_GRUPO = '"+ ALLTRIM(TMP->B1_GRUPO) +"' AND B1_COD <> '"+ ALLTRIM(cGrupo) +"' "
          
          If ( SELECT("TMG") ) > 0
               dbSelectArea("TMG")
               TMG->(dbCloseArea())
          EndIf     
          
          TCQUERY cQuery NEW ALIAS "TMG"                     
          
         if TMG->(!EOF())            
              While TMG->(!EOF())            
                   Aadd(aCliente, {TMG->B1_COD, TMG->B1_UM} )
                   TMG->(dbSkip())
               EndDo
          Endif          

     Endif
     
     RegToMemory("SD1",.F.,.F.)
          
     if(Empty(aCols[1,GdFieldPos("D1_COD")]))
     
          For i := 2 To Len(aCliente)+1                           
                
               oGetDados:addLine()
               
             aCols[i,GdFieldPos("D1_ITEM")] := StrZero(i,4,0)
               aCols[i,GdFieldPos("D1_COD")]:= aCliente[i-1,1]
               aCols[i,GdFieldPos("D1_UM")] := aCliente[i-1,2]
               //aCols[i,GdFieldPos("Z01_NOME")] := aCliente[i,3]
               //aCols[i,GdFieldPos("Z01_CONTAT")]:= aCliente[i,4]
               //aCols[i,GdFieldPos("Z01_UF")]    := aCliente[i,5]
               
               If ExistTrigger("D1_COD")
                    RunTrigger(2,len(aCols),Nil,,"D1_COD")
               Endif

               //oGetDados:addLine()
          Next
     Else
          //oGetDados:addLine()
          For i := 2 To Len(aCliente)+1                            
                
               oGetDados:addLine()
               nCont := Len(aCols)
               
               aCols[i,GdFieldPos("D1_ITEM")] := StrZero(i,4,0)
               aCols[i,GdFieldPos("D1_COD")]:= aCliente[i-1,1]
               aCols[i,GdFieldPos("D1_UM")] := aCliente[i-1,2]
               aCols[i,GdFieldPos("D1_DESC")] := 1.00
               aCols[i,GdFieldPos("D1_QUANT")] := 1.00
               aCols[i,GdFieldPos("D1_VUNIT")] := 1.00
               aCols[i,GdFieldPos("D1_TOTAL")] := 1.00    
               aCols[i,GdFieldPos("D1_TES")] := "440"
               aCols[i,GdFieldPos("D1_CF")] := "000"
               aCols[i,GdFieldPos("D1_LOCAL")] := "01"
               //aCols[nCont,GdFieldPos("Z01_CONTAT")]:= aCliente[i,4]
               //aCols[nCont,GdFieldPos("Z01_UF")]    := aCliente[i,5]

               If ExistTrigger("D1_COD")
                    RunTrigger(2,len(aCols),Nil,,"D1_COD")
               Endif

               //oGetDados:addLine()
               
               

          Next
     Endif


     oGetDados:ForceRefresh()
     oGetDados:oBrowse:Refresh()
     //oGetDados:oBrowse:SetFocus()
     //oGetDados:GoBottom()

Return(cGrupo)

Para participar do Fórum você precisa efetuar login primeiro
Caso você não esteja registrado registre-se para participar do fórum

 Mudar para Fórum