× Linguagem de Programação ADVPL

Perguntas Consulta Expecifica

Mais
7 anos 4 meses atrás #31635 por dzf6762
Consulta Expecifica foi criado por dzf6762
Boa tarde;

Estou tentando efetuar o retorno de uma consulta especifica porém já tentei de tudo que eu sei e não estou conseguindo, estou anexando a imagem da configuração da consulta e o fonte se alguém consegue me ajudar.
obs: o campo que quero que retorne é SND->ND_CBASE

#include "protheus.ch"
#include "tbiconn.ch"
/*/
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³CONSUSN1 º Autor ³ DENIS ZANICHELLI º Data ³ 29/12/16 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³Consulta personalizada da tabela de Ativos Imobilizados(SN1)º±±
±±º ³ º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
/*/
User function CONSUSN1()
PRIVATE aCabecpos := {"Filial","Cod.Base","Item","Descric","Patrimonio"}
PRIVATE aViewSN1 := {}
Private oListBox := Nil
pRIVATE cQuery := ""
PRIVATE cChar := ""
Private oChar := nil
Private aCbitem := {"Filial+Cod.Base","Filial+Descrição","Filial+Patrimonio"}
Private cCbitem := ""
pRIVATE cVar := READVAR()
Private cRet := ""


If Select("TRB") > 0
Dbselectarea("TRB")
TRB->(DbClosearea())
EndIf
cQuery := "SELECT * FROM "+RetSqlName("SN1")+" WHERE "
cQuery += "N1_TELBLQ != 'S' AND "
cQuery += "D_E_L_E_T_ <> '*' "
cQuery += "ORDER BY N1_FILIAL,N1_CBASE,N1_ITEM,N1_DESCRIC,N1_CHAPA"
cQuery := ChangeQuery(cQuery)
dbUseArea(.T.,"TOPCONN",TcGenQry(,,cQuery),"TRB",.T.,.T.)
TRB->(DBSELECTAREA("TRB"))
TRB->(DBGOTOP())
ASIZE(aViewSN1,0)
//oListBox:Refresh()
cChar := space(10)
While (!TRB->(Eof()))
aAdd(aViewSN1,{TRB->N1_FILIAL,TRB->N1_CBASE,TRB->N1_ITEM,TRB->N1_DESCRIC,TRB->N1_CHAPA})
TRB->(DBSKIP())
ENDDO

DEFINE FONT oBold NAME "Arial" SIZE 0, -12 BOLD
DEFINE MSDIALOG oDlg FROM 0,0 TO 340,600 TITLE "Consulta Padrão - SN1 - Ativos Imobilizados" Of oMainWnd PIXEL
@ 13, 4 To 14,302 Label "" of oDlg PIXEL
oListBox := TWBrowse():New( 20,2,298,130,,aCabecpos,,oDlg,,,,,,,,,,,,.F.,,.T.,,.F.,,,)
oListBox:SetArray(aViewSN1)
oListBox:bLine := {|| {;
aViewSN1[oListBox:nAt][1],;
aViewSN1[oListBox:nAt][2],;
aViewSN1[oListBox:nAt][3],;
aViewSN1[oListBox:nAt][4],;
aViewSN1[oListBox:nAt][5];
}}
IF cVar == "M->ND_CBASE"
oListBox:bLDblClick := {|| @cRet := (aViewSN1[oListBox:nAt][2]),oDlg:End() }
ELSEIF cVar == "M->ND_X_PATRI"
oListBox:bLDblClick := {|| @cRet := (aViewSN1[oListBox:nAt][5]),oDlg:End() }
ELSE
ALERT("ERROR - ENTRE CONTATO COM OS ADMINISTRADORES DO SISTEMA!!!")
ENDIF
//oListBox:Refresh()
@ 4 ,10 SAY "CONSULTA PADRãO - SN1 - ATIVOS IMOBILIZADOS" Of oDlg PIXEL SIZE 245 ,9 FONT oBold
@ 155 ,10 ComboBox cCbitem Items aCbitem Size 070,010 PIXEL OF oDlg on change COMBCHAR(@cCbitem)
@ 155 ,80 MSGET oChar var cChar When .t. SIZE 070,010 PICTURE "@!" OF oDlg PIXEL
@ 156 ,150 BUTTON "Pesquisar" SIZE 55 ,10 FONT oDlg:oFont ACTION PESQCHAR(@cChar,@cCbitem) OF oDlg PIXEL
@ 156 ,244 BUTTON "Sair" SIZE 45 ,10 FONT oDlg:oFont ACTION (oDlg:End()) OF oDlg PIXEL //"Voltar"
ACTIVATE MSDIALOG oDlg CENTERED
msginfo("Opção seleciona foi: "+cRet,"TEL TELECOMINICAÇÕES")
Return(cRet)
/*/
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³PESQCHAR º Autor ³ DENIS ZANICHELLI º Data ³ 29/12/16 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³Pesquisa dentro da consulta personalizada º±±
±±º ³ º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
/*/
STATIC FUNCTION PESQCHAR(cChar,cCbitem)
PRIVATE nX
Private nPos1
Private nPos2
Private cContab := ""

if cCbitem == "Filial+Cod.Base"
nPos1 := 1
nPos2 := 2
elseif cCbitem == "Filial+Patrimonio"
nPos1 := 1
nPos2 := 5
elseif cCbitem == "Filial+Descrição"
nPos1 := 1
nPos2 := 4
ENDIF

For nX:=1 to Len(aViewSN1)
cContab := (aViewSN1[nX][nPos1]+aViewSN1[nX][nPos2])
If alltrim(cChar) $ alltrim(cContab)
oListBox:GoPosition(nX)
oListBox:setFocus()
EndIf

Next nX
RETURN
/*/
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³MT120GRV º Autor ³ DENIS ZANICHELLI º Data ³ 29/12/16 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³Acoes efetuadas ao trocar o combobox º±±
±±º ³ º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
/*/
static function COMBCHAR(cCbitem)
if cCbitem == "Filial+Cod.Base"
cChar := Space(TamSx3("N1_FILIAL")[1])+ Space(TamSx3("N1_CBASE")[1])
oListBox:bLDblClick := {|| @cRet := (aViewSN1[oListBox:nAt][2]),oDlg:End() }
elseif cCbitem == "Filial+Patrimonio"
cChar := Space(TamSx3("N1_FILIAL")[1])+ Space(TamSx3("N1_CHAPA")[1])
oListBox:bLDblClick := {|| @cRet := (aViewSN1[oListBox:nAt][5]),oDlg:End() }
elseif cCbitem == "Filial+Descrição"
cChar := Space(TamSx3("N1_FILIAL")[1])+ Space(TamSx3("N1_DESCRIC")[1])
// oListBox:bLDblClick := {|| cRet := (aViewSN1[oListBox:nAt][4]),oDlg:End() }
ENDIF

return
att;

Denis Zanichelli
Anexos:

Por favor Acessar ou Registrar para participar da conversa.

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