- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Abrir programa visualização
×
Linguagem de Programação ADVPL
Perguntas Abrir programa visualização
- marlonpho
- Autor do Tópico
- Desconectado
- Usuário está bloqueado
Menos
Mais
- Postagens: 10
- Obrigados Recebidos: 0
11 anos 3 meses atrás #16108
por marlonpho
Abrir programa visualização foi criado por marlonpho
Pessoal boa tarde.
Criei um programa que lista algumas informações em uma Grid. Uma das informações é a Nota de Entrada, gostaria de fazer uma função que ao clicar na grid seja aberto o documento de entrada em modo de visualização.
Alguem tem alguma dica de como fazer isso?
Obrigado.
Criei um programa que lista algumas informações em uma Grid. Uma das informações é a Nota de Entrada, gostaria de fazer uma função que ao clicar na grid seja aberto o documento de entrada em modo de visualização.
Alguem tem alguma dica de como fazer isso?
Obrigado.
Por favor Acessar ou Registrar para participar da conversa.
- kaciorrm
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 55
- Obrigados Recebidos: 1
11 anos 3 meses atrás - 11 anos 3 meses atrás #16144
por kaciorrm
Respondido por kaciorrm no tópico Abrir programa visualização
Boa tarde
Da uma olha da nessa tela que desenvolvi em cima de uma tabela de comissão. ela faz o que você precisa porém traz a nota de saida. Vc só tem que descobrir qual é a funçao de visualização da nota de entrada.
o Botão visualizar é o mesmo que dar 2 cliques a linha.
Da uma olha da nessa tela que desenvolvi em cima de uma tabela de comissão. ela faz o que você precisa porém traz a nota de saida. Vc só tem que descobrir qual é a funçao de visualização da nota de entrada.
o Botão visualizar é o mesmo que dar 2 cliques a linha.
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'RWMAKE.CH'
#INCLUDE 'FONT.CH'
#INCLUDE 'COLORS.CH'
#INCLUDE "TOPCONN.CH"
/*/
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³SCHLCOM() º Autor ³ CASSIO MONTEIRO º Data ³ 15/07/11 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³ Profissionais comissionados º±±
±±º ³ º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
/*/
//u_SCHLCOM()
User Function SCHLCOM()
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Declaracao de Variaveis ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Local aCores := {{"Empty(Z9_STATUS)",'BR_AMARELO' },;
{ "Z9_STATUS == 'A'",'BR_VERDE'},;
{ "Z9_STATUS == 'R'",'BR_VERMELHO'},;
{ "Z9_STATUS == 'F'",'BR_PRETO'}}
Private cCadastro := "Liberação de Comições"
Private aRotina := { {"Pesquisar","AxPesqui",0,1} ,;
{ "Visualizar" ,"U_SCHLCOM1(SZ9->Z9_SERIE, SZ9->Z9_NF)" ,0,2},; // "Visualizar"
{"Reprovar","U_SCHLCOM2(SZ9->Z9_SERIE, SZ9->Z9_NF,'R')",0,3},;
{"Aprovar","U_SCHLCOM2(SZ9->Z9_SERIE, SZ9->Z9_NF,'A')",0,4},;
{"Fechar Com.","U_SCHLCOM5",0,5},;
{"Profissional","U_SCHLCOM4(SZ9->Z9_PROF)",0,6},;
{"Legenda","U_SCHLCOM3",0,7}}
Private cDelFunc := ".T." // Validacao para a exclusao. Pode-se utilizar ExecBlock
Private cString := "SZ9"
dbSelectArea("SZ9")
dbSetOrder(1)
dbSelectArea(cString)
mBrowse( ,,,,cString,,,,,,aCores)
//mBrowse( 6,1,22,75,cString,,,,,,aCores)
Return
User Function SCHLCOM1(cSerie, cNf)
Local nRcno
DbSelectArea("Sd2")
Dbsetorder(3)
DbSeek(xFilial("SD2")+cNf+cSerie)
If Alltrim(SD2->D2_DESCRI) ==""
While cNf+cSerie == SD2->D2_DOC+SD2->D2_SERIE
RecLock("SD2",.F.)
SD2->D2_DESCRI := Posicione("SB1", 1, xFilial("SB1") + SD2->D2_COD, "SB1->B1_DESC")
MsUnlock()
SD2->(DbSkip())
Enddo
EndIF
DbSelectArea("SF2")
Dbsetorder(1)
DbSeek(xFilial("SF2")+cNf+cSerie)
nRcno := SF2->(Recno ( ))
MC090Visual("SF2",nRcno, 2)
Return
User Function SCHLCOM2(cSerie, cNf, cApr)
Local cUsu := PswRet()[1][2]
Private cObs := SZ9->Z9_OBS
Private nValor := SZ9->Z9_COMCAL
SetPrvt("oDlg1","oSay1","oSay2","oBtn1","oGet1","oGet2")
oDlg1 := MSDialog():New( 095,232,203,799,"Observação",,,.F.,,,,,,.T.,,,.T. )
oSay1 := TSay():New( 004,004,{||"Observação:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay2 := TSay():New( 035,004,{||"Valor:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,016,008)
oBtn1 := TButton():New( 031,238,"OK",oDlg1,{|| oDlg1:End()},037,012,,,,.T.,,"",,,,.F. )
oGet1 := TGet():New( 033,020,{|u| If(PCount()>0,nValor:=u,nValor)},oDlg1,056,008,'@E 999,999,999.99',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","nValor",,)
oGet2 := TGet():New( 016,004,{|u| If(PCount()>0,cObs:=u,cObs)},oDlg1,272,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","cObs",,)
oDlg1:Activate(,,,.T.)
DbSelectArea("SZ9")
Dbsetorder(1)
If DbSeek(xFilial("SZ9")+cNf+cSerie)
RecLock("SZ9",.F.)
If !Z9_STATUS == "F"
If cApr == "R"
SZ9->Z9_STATUS :="R"
SZ9->Z9_USRLIB := cUsu
SZ9->Z9_DATALIB := date()
SZ9->Z9_HORALIB := SUBSTR(TIME(), 1, 5)
SZ9->Z9_OBS := cObs
SZ9->Z9_COMFIN := 0
EndIf
If cApr == "A"
SZ9->Z9_STATUS :="A"
SZ9->Z9_USRLIB := cUsu
SZ9->Z9_DATALIB := date()
SZ9->Z9_HORALIB := SUBSTR(TIME(), 1, 5)
SZ9->Z9_OBS := cObs
SZ9->Z9_COMFIN := nValor
EndIf
Else
Alert("Comissão Apurada!")
EndIF
MsUnlock()
EndIf
Return
User Function SCHLCOM3()
Local aLegenda := {}
AADD(aLegenda,{"BR_VERDE" ,"Aprovado" })
AADD(aLegenda,{"BR_AMARELO" ,"Não Classificado" })
AADD(aLegenda,{"BR_VERMELHO" ,"Reprovado" })
AADD(aLegenda,{"BR_PRETO" ,"Comissão já Apurada" })
BrwLegenda("Liberação de Comições", "Legenda", aLegenda)
Return Nil
User Function SCHLCOM4(cCod)
Local nRcno
DbSelectArea("SA1")
Dbsetorder(1)
DbSeek(xFilial("SA1")+cCod)
nRcno := SA1->(Recno ( ))
A030Visual("SA1",nRcno, 2)
Return
User Function SCHLCOM5()
Private cProf := Space(6)
Private dAt := CtoD(" ")
Private dDe := CtoD(" ")
Private dPG := CtoD(" ")
SetPrvt("oDlg1","oSay1","oSay2","oSay3","oSay4","oGet1","oGet2","oGet3","oGet4","oBtn1","oBtn2")
oDlg1 := MSDialog():New( 093,231,217,607,"Fechar Comissão",,,.F.,,,,,,.T.,,,.T. )
oSay1 := TSay():New( 010,004,{||"Proficional"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay2 := TSay():New( 026,004,{||"Data De:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay3 := TSay():New( 026,108,{||"Até:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay4 := TSay():New( 040,004,{||"Data Pag"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oGet1 := TGet():New( 008,040,{|u| If(PCount()>0,cProf:=u,cProf)},oDlg1,052,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"SA1PRF","cProf",,)
oGet2 := TGet():New( 024,040,{|u| If(PCount()>0,dDe:=u,dDe)},oDlg1,052,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","dDe",,)
oGet3 := TGet():New( 024,124,{|u| If(PCount()>0,dAt:=u,dAt)},oDlg1,052,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","dAt",,)
oGet4 := TGet():New( 038,040,{|u| If(PCount()>0,dPG:=u,dPG)},oDlg1,052,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","dPG",,)
oBtn1 := TButton():New( 038,140,"OK",oDlg1,{ |u|SCHLCOM5A(cProf,dDe,dAt,) },037,012,,,,.T.,,"",,,,.F. )
oBtn2 := TButton():New( 038,100,"Cancelar",oDlg1,{||oDlg1:End()},037,012,,,,.T.,,"",,,,.F. )
oDlg1:Activate(,,,.T.)
Return
Static Function SCHLCOM5A (cProf,dDe,dAt)
DbSelectArea("SZ9")
DbSetOrder (3)
Dbseek(xFilial("SZ9")+DtoS(dDe))
While SZ9->Z9_DTEMINF > dAt
If SZ9->Z9_PROF <> cProf
SZ9->(Dbskip())
Loop
EndIF
Alert(SZ9->Z9_PROF +" VALO: "+ STR(SZ9->Z9_COMFIN))
SZ9->(Dbskip())
Enddo
Return
Ultima edição: 11 anos 3 meses atrás por kaciorrm.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Abrir programa visualização
Tempo para a criação da página:0.089 segundos