- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Marcar e Desmarcar Não Funciona
×
Linguagem de Programação ADVPL
Perguntas Marcar e Desmarcar Não Funciona
- adautojunior
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 15
- Obrigados Recebidos: 0
9 anos 4 meses atrás #28549
por adautojunior
Marcar e Desmarcar Não Funciona foi criado por adautojunior
Boa noite pessoal,
Após atualizar o Protheus por completo, meu fonte abaixo deixou de funcionar. Clico em "Desmarcar" (DesMarcaTudo()) e ele só visualmente desmarcar os itens da tabela TC8.
Alguém sabe me dizer se uma das funções abaixo foi descontinuada pela TOTVS com essa atualização? Desde já agradeço!
Segue fonte... Em anexo, segue imagem da tela....
#INCLUDE "PROTHEUS.CH"
#include "RWMAKE.ch"
#include "Colors.ch"
#include "Font.ch"
#Include "HBUTTON.CH"
#include "Topconn.ch"
User Function BRP294()
Local aTipo :={'N','B','D'}
Local _aAreaBR := GetArea()
Private CPERG :="BRP294"
Private _cMarca := GetMark()
Private aFields := {}
Private aFields2 := {}
Private aTit := {}
Private aTit2 := {}
ValidPerg()
Pergunte(cPERG,.T.)
aCampos := {}
aCampos2:= {}
cVlrRec:=cVlrPag:=0
AADD(aCampos,{'T9_OK' ,'#','@!','2','0'})
AADD(aCampos,{'T9_PREFIXO' ,'Prefixo','@!','2','0'})
AADD(aCampos,{'T9_NUM' ,'Titulo', '@!','9','0'})
AADD(aCampos,{'T9_NATUREZ' ,'Natureza','@!','10','0'})
AADD(aCampos,{'T9_PARCELA' ,'Parcela','@!','3','0'})
AADD(aCampos,{'T9_VALOR' ,'Valor','@EZ 999,999,999.999999','15','6'})
AADD(aCampos,{'T9_SALDO' ,'Saldo','@EZ 999,999,999.999999','15','6'})
AADD(aCampos,{'T9_TIPO' ,'Tipo', '@!','3','0'})
AADD(aCampos,{'T9_CLIENTE' ,'Cliente','@!','6','0'})
AADD(aCampos,{'T9_LOJA' ,'Loja', '@!','2','0'})
AADD(aCampos,{'T9_NOMCLI' ,'Nome', '@!','25','0'})
AADD(aCampos,{'T9_EMISSAO' ,'Emissao','','10','0'})
AADD(aCampos,{'T9_VENCREA' ,'Venc.Real','','10','0'})
AADD(aCampos2,{'T8_OK' ,'#','@!','2','0'})
AADD(aCampos2,{'T8_PREFIXO' ,'Prefixo','@!','2','0'})
AADD(aCampos2,{'T8_NUM' ,'Titulo', '@!','9','0'})
AADD(aCampos2,{'T8_NATUREZ' ,'Natureza','@!','10','0'})
AADD(aCampos2,{'T8_PARCELA' ,'Parcela','@!','3','0'})
AADD(aCampos2,{'T8_VALOR' ,'Valor','@EZ 999,999,999.999999','15','6'})
AADD(aCampos2,{'T8_SALDO' ,'Saldo','@EZ 999,999,999.999999','15','6'})
AADD(aCampos2,{'T8_TIPO' ,'Tipo', '@!','3','0'})
AADD(aCampos2,{'T8_FORNECE' ,'Fornecedor','@!','6','0'})
AADD(aCampos2,{'T8_LOJA' ,'Loja', '@!','2','0'})
AADD(aCampos2,{'T8_NOMFOR' ,'Nome', '@!','25','0'})
AADD(aCampos2,{'T8_EMISSAO' ,'Emissao','','10','0'})
AADD(aCampos2,{'T8_VENCREA' ,'Venc.Real','','10','0'})
Cria_TC9()
lOk:=.F.
nNumSeq := 1
nSaldo := 0
nVlrMail := 0
nValZZC := 0
nDocCt2 := space(6)
nLin := 1
cConta := nSeqCt2 := space(20)
Monta_TC9()
Monta_TC8()
If !Empty(TC9->(RecCount()))
DbSelectArea('TC9')
@ 100,005 TO 500,750 DIALOG oDlgTitulos TITLE "Central Endosso"
@ 006,005 TO 100,325 BROWSE "TC9" MARK "T9_OK" FIELDS aCampos Object _oBrwPed
@ 016,330 BUTTON "Marcar" SIZE 40,15 ACTION MsAguarde({|| MarcarTudo()},'Marcando Registros...')
@ 036,330 BUTTON "Desmarcar" SIZE 40,15 ACTION MsAguarde({|| DesMarcaTudo()},'Desmarcando Registros...')
@ 056,330 BUTTON "Gerar Endosso" SIZE 40,15 ACTION MsAguarde({|| Endossa() , Close(oDlgTitulos)},'Gerando Endossos...')
@ 076,330 BUTTON "Gerar Cartas" SIZE 40,15 ACTION MsAguarde({|| U_Brp295()},'Gerando Cartas...')
@ 096,330 BUTTON "Imp. Duplicata" SIZE 40,15 ACTION MsAguarde({|| U_DuplBres(),},'Imprimindo Duplicata...')
@ 116,330 BUTTON "Cad.Endosso" SIZE 40,15 ACTION MsAguarde({|| U_Brp296()},'Cadastro de Endosso....')
@ 136,330 BUTTON "Calcular" SIZE 40,15 ACTION MsAguarde({|| calcular()},'Calculando Titulos Selecionados....')
@ 156,330 BUTTON "_Sair" SIZE 40,15 ACTION Close(oDlgTitulos)
DbSelectArea('TC8')
@ 100,005 TO 190,325 BROWSE "TC8" MARK "T8_OK" FIELDS aCampos2 Object _oBrwPed2
DbSelectArea('TC9')
_oBrwPed:bMark := {|| Marcar()}
_oBrwPed2:bMark := {|| MarcarTC8()}
ACTIVATE DIALOG oDlgTitulos CENTERED
return
Endif
static function calcular()
Local _aAreaBR := GetArea()
MsgAlert("Selecao a Receber : " +alltrim(str(cVlrRec))+ " Selecao a Pagar: " +alltrim(str(cVlrPag)))//,"Atencao","ALERT")
return //return calcular()
static function endossa()
//IF MsgYesNo("O Total de Selecao do Contas a Receber foi de : " + alltrim(str(cVlrRec)) + " e o Total de Selecao do Contas a Pagar foi de : " + alltrim(str(cVlrPag)) + ". Tem Certeza que Deseja Continuar?" )
IF MsgYesNo("Voce selecionou a opção Gerar Endosso. Esta rotina ira baixar os titulos, gerar compensações, contabilizações e historico. Tem Certeza que Deseja Continuar?" )
dbSelectArea("TC9")
dbGoTop()
ProcRegua(Reccount())
lMarcou := .f.
While !Eof()
IncProc()
If TC9->T9_OK <> _cMarca
dbSelectArea("TC9")
TC9->(dbSkip(1));Loop
Else
lMarcou := .t.
Exit
Endif
TC9->(dbSkip(1))
Enddo
If lMarcou
dbSelectArea("TC9")
dbGoTop()
ProcRegua(Reccount())
While !Eof()
IncProc()
If TC9->T9_OK <> _cMarca
dbSelectArea("TC9")
TC9->(dbSkip(1));Loop
Endif
cQuery:="BEGIN TRAN "
cQuery+="UPDATE "+RetSqlName("SE1")+" SET E1_PORTADO='END',E1_SITUACA='1' WHERE D_E_L_E_T_<>'*' AND E1_PREFIXO = '"+TC9->T9_PREFIXO+"' AND "
cQuery+="E1_NUM = '"+TC9->T9_NUM+"' AND E1_CLIENTE = '"+TC9->T9_CLIENTE+"' AND E1_LOJA = '"+TC9->T9_LOJA+"' AND "
cQuery+="E1_PARCELA = '"+TC9->T9_PARCELA+"' AND E1_TIPO = '"+TC9->T9_TIPO+"' AND E1_PORTADO='' "
cQuery+="COMMIT"
TCSQLExec(cQuery)
AADD(aTit,{TC9->T9_PREFIXO,TC9->T9_NUM,TC9->T9_PARCELA,TC9->T9_TIPO,TC9->T9_CLIENTE,TC9->T9_LOJA,TC9->T9_NOMCLI,TC9->T9_EMISSAO,TC9->T9_VENCREA,TC9->T9_VALOR,TC9->T9_SALDO,TC9->T9_NATUREZ})
TC9->(dbSkip())
Enddo
TC9->(dbCloseArea())
cNUM := GetSX8Num("ZZC","ZZC_DOC")
CONFIRMSX8()
ENDIF
dbSelectArea("TC8")
dbGoTop()
ProcRegua(Reccount())
lMarcou := .f.
While !Eof()
IncProc()
If TC8->T8_OK <> _cMarca
dbSelectArea("TC8")
TC8->(dbSkip(1));Loop
Else
lMarcou := .t.
Exit
Endif
TC8->(dbSkip(1))
Enddo
If lMarcou
dbSelectArea("TC8")
dbGoTop()
ProcRegua(Reccount())
While !Eof()
IncProc()
If TC8->T8_OK <> _cMarca
dbSelectArea("TC8")
TC8->(dbSkip(1));Loop
Endif
cQuery:="BEGIN TRAN "
cQuery+="UPDATE "+RetSqlName("SE2")+" SET E2_PORTADO='END' WHERE D_E_L_E_T_<>'*' AND E2_PREFIXO = '"+TC8->T8_PREFIXO+"' AND "
cQuery+="E2_NUM = '"+TC8->T8_NUM+"' AND E2_FORNECE = '"+TC8->T8_FORNECE+"' AND E2_LOJA = '"+TC8->T8_LOJA+"' AND "
cQuery+="E2_PARCELA = '"+TC8->T8_PARCELA+"' AND E2_TIPO = '"+TC8->T8_TIPO+"' AND E2_PORTADO='' "
cQuery+="COMMIT"
TCSQLExec(cQuery)
AADD(aTit2,{TC8->T8_PREFIXO,TC8->T8_NUM,TC8->T8_PARCELA,TC8->T8_TIPO,TC8->T8_FORNECE,TC8->T8_LOJA,TC8->T8_NOMFOR,TC8->T8_EMISSAO,TC8->T8_VENCREA,TC8->T8_VALOR,TC8->T8_SALDO,TC8->T8_NATUREZ})
TC8->(dbSkip())
Enddo
TC8->(dbCloseArea())
ENDIF
//
Após atualizar o Protheus por completo, meu fonte abaixo deixou de funcionar. Clico em "Desmarcar" (DesMarcaTudo()) e ele só visualmente desmarcar os itens da tabela TC8.
Alguém sabe me dizer se uma das funções abaixo foi descontinuada pela TOTVS com essa atualização? Desde já agradeço!
Segue fonte... Em anexo, segue imagem da tela....
#INCLUDE "PROTHEUS.CH"
#include "RWMAKE.ch"
#include "Colors.ch"
#include "Font.ch"
#Include "HBUTTON.CH"
#include "Topconn.ch"
User Function BRP294()
Local aTipo :={'N','B','D'}
Local _aAreaBR := GetArea()
Private CPERG :="BRP294"
Private _cMarca := GetMark()
Private aFields := {}
Private aFields2 := {}
Private aTit := {}
Private aTit2 := {}
ValidPerg()
Pergunte(cPERG,.T.)
aCampos := {}
aCampos2:= {}
cVlrRec:=cVlrPag:=0
AADD(aCampos,{'T9_OK' ,'#','@!','2','0'})
AADD(aCampos,{'T9_PREFIXO' ,'Prefixo','@!','2','0'})
AADD(aCampos,{'T9_NUM' ,'Titulo', '@!','9','0'})
AADD(aCampos,{'T9_NATUREZ' ,'Natureza','@!','10','0'})
AADD(aCampos,{'T9_PARCELA' ,'Parcela','@!','3','0'})
AADD(aCampos,{'T9_VALOR' ,'Valor','@EZ 999,999,999.999999','15','6'})
AADD(aCampos,{'T9_SALDO' ,'Saldo','@EZ 999,999,999.999999','15','6'})
AADD(aCampos,{'T9_TIPO' ,'Tipo', '@!','3','0'})
AADD(aCampos,{'T9_CLIENTE' ,'Cliente','@!','6','0'})
AADD(aCampos,{'T9_LOJA' ,'Loja', '@!','2','0'})
AADD(aCampos,{'T9_NOMCLI' ,'Nome', '@!','25','0'})
AADD(aCampos,{'T9_EMISSAO' ,'Emissao','','10','0'})
AADD(aCampos,{'T9_VENCREA' ,'Venc.Real','','10','0'})
AADD(aCampos2,{'T8_OK' ,'#','@!','2','0'})
AADD(aCampos2,{'T8_PREFIXO' ,'Prefixo','@!','2','0'})
AADD(aCampos2,{'T8_NUM' ,'Titulo', '@!','9','0'})
AADD(aCampos2,{'T8_NATUREZ' ,'Natureza','@!','10','0'})
AADD(aCampos2,{'T8_PARCELA' ,'Parcela','@!','3','0'})
AADD(aCampos2,{'T8_VALOR' ,'Valor','@EZ 999,999,999.999999','15','6'})
AADD(aCampos2,{'T8_SALDO' ,'Saldo','@EZ 999,999,999.999999','15','6'})
AADD(aCampos2,{'T8_TIPO' ,'Tipo', '@!','3','0'})
AADD(aCampos2,{'T8_FORNECE' ,'Fornecedor','@!','6','0'})
AADD(aCampos2,{'T8_LOJA' ,'Loja', '@!','2','0'})
AADD(aCampos2,{'T8_NOMFOR' ,'Nome', '@!','25','0'})
AADD(aCampos2,{'T8_EMISSAO' ,'Emissao','','10','0'})
AADD(aCampos2,{'T8_VENCREA' ,'Venc.Real','','10','0'})
Cria_TC9()
lOk:=.F.
nNumSeq := 1
nSaldo := 0
nVlrMail := 0
nValZZC := 0
nDocCt2 := space(6)
nLin := 1
cConta := nSeqCt2 := space(20)
Monta_TC9()
Monta_TC8()
If !Empty(TC9->(RecCount()))
DbSelectArea('TC9')
@ 100,005 TO 500,750 DIALOG oDlgTitulos TITLE "Central Endosso"
@ 006,005 TO 100,325 BROWSE "TC9" MARK "T9_OK" FIELDS aCampos Object _oBrwPed
@ 016,330 BUTTON "Marcar" SIZE 40,15 ACTION MsAguarde({|| MarcarTudo()},'Marcando Registros...')
@ 036,330 BUTTON "Desmarcar" SIZE 40,15 ACTION MsAguarde({|| DesMarcaTudo()},'Desmarcando Registros...')
@ 056,330 BUTTON "Gerar Endosso" SIZE 40,15 ACTION MsAguarde({|| Endossa() , Close(oDlgTitulos)},'Gerando Endossos...')
@ 076,330 BUTTON "Gerar Cartas" SIZE 40,15 ACTION MsAguarde({|| U_Brp295()},'Gerando Cartas...')
@ 096,330 BUTTON "Imp. Duplicata" SIZE 40,15 ACTION MsAguarde({|| U_DuplBres(),},'Imprimindo Duplicata...')
@ 116,330 BUTTON "Cad.Endosso" SIZE 40,15 ACTION MsAguarde({|| U_Brp296()},'Cadastro de Endosso....')
@ 136,330 BUTTON "Calcular" SIZE 40,15 ACTION MsAguarde({|| calcular()},'Calculando Titulos Selecionados....')
@ 156,330 BUTTON "_Sair" SIZE 40,15 ACTION Close(oDlgTitulos)
DbSelectArea('TC8')
@ 100,005 TO 190,325 BROWSE "TC8" MARK "T8_OK" FIELDS aCampos2 Object _oBrwPed2
DbSelectArea('TC9')
_oBrwPed:bMark := {|| Marcar()}
_oBrwPed2:bMark := {|| MarcarTC8()}
ACTIVATE DIALOG oDlgTitulos CENTERED
return
Endif
static function calcular()
Local _aAreaBR := GetArea()
MsgAlert("Selecao a Receber : " +alltrim(str(cVlrRec))+ " Selecao a Pagar: " +alltrim(str(cVlrPag)))//,"Atencao","ALERT")
return //return calcular()
static function endossa()
//IF MsgYesNo("O Total de Selecao do Contas a Receber foi de : " + alltrim(str(cVlrRec)) + " e o Total de Selecao do Contas a Pagar foi de : " + alltrim(str(cVlrPag)) + ". Tem Certeza que Deseja Continuar?" )
IF MsgYesNo("Voce selecionou a opção Gerar Endosso. Esta rotina ira baixar os titulos, gerar compensações, contabilizações e historico. Tem Certeza que Deseja Continuar?" )
dbSelectArea("TC9")
dbGoTop()
ProcRegua(Reccount())
lMarcou := .f.
While !Eof()
IncProc()
If TC9->T9_OK <> _cMarca
dbSelectArea("TC9")
TC9->(dbSkip(1));Loop
Else
lMarcou := .t.
Exit
Endif
TC9->(dbSkip(1))
Enddo
If lMarcou
dbSelectArea("TC9")
dbGoTop()
ProcRegua(Reccount())
While !Eof()
IncProc()
If TC9->T9_OK <> _cMarca
dbSelectArea("TC9")
TC9->(dbSkip(1));Loop
Endif
cQuery:="BEGIN TRAN "
cQuery+="UPDATE "+RetSqlName("SE1")+" SET E1_PORTADO='END',E1_SITUACA='1' WHERE D_E_L_E_T_<>'*' AND E1_PREFIXO = '"+TC9->T9_PREFIXO+"' AND "
cQuery+="E1_NUM = '"+TC9->T9_NUM+"' AND E1_CLIENTE = '"+TC9->T9_CLIENTE+"' AND E1_LOJA = '"+TC9->T9_LOJA+"' AND "
cQuery+="E1_PARCELA = '"+TC9->T9_PARCELA+"' AND E1_TIPO = '"+TC9->T9_TIPO+"' AND E1_PORTADO='' "
cQuery+="COMMIT"
TCSQLExec(cQuery)
AADD(aTit,{TC9->T9_PREFIXO,TC9->T9_NUM,TC9->T9_PARCELA,TC9->T9_TIPO,TC9->T9_CLIENTE,TC9->T9_LOJA,TC9->T9_NOMCLI,TC9->T9_EMISSAO,TC9->T9_VENCREA,TC9->T9_VALOR,TC9->T9_SALDO,TC9->T9_NATUREZ})
TC9->(dbSkip())
Enddo
TC9->(dbCloseArea())
cNUM := GetSX8Num("ZZC","ZZC_DOC")
CONFIRMSX8()
ENDIF
dbSelectArea("TC8")
dbGoTop()
ProcRegua(Reccount())
lMarcou := .f.
While !Eof()
IncProc()
If TC8->T8_OK <> _cMarca
dbSelectArea("TC8")
TC8->(dbSkip(1));Loop
Else
lMarcou := .t.
Exit
Endif
TC8->(dbSkip(1))
Enddo
If lMarcou
dbSelectArea("TC8")
dbGoTop()
ProcRegua(Reccount())
While !Eof()
IncProc()
If TC8->T8_OK <> _cMarca
dbSelectArea("TC8")
TC8->(dbSkip(1));Loop
Endif
cQuery:="BEGIN TRAN "
cQuery+="UPDATE "+RetSqlName("SE2")+" SET E2_PORTADO='END' WHERE D_E_L_E_T_<>'*' AND E2_PREFIXO = '"+TC8->T8_PREFIXO+"' AND "
cQuery+="E2_NUM = '"+TC8->T8_NUM+"' AND E2_FORNECE = '"+TC8->T8_FORNECE+"' AND E2_LOJA = '"+TC8->T8_LOJA+"' AND "
cQuery+="E2_PARCELA = '"+TC8->T8_PARCELA+"' AND E2_TIPO = '"+TC8->T8_TIPO+"' AND E2_PORTADO='' "
cQuery+="COMMIT"
TCSQLExec(cQuery)
AADD(aTit2,{TC8->T8_PREFIXO,TC8->T8_NUM,TC8->T8_PARCELA,TC8->T8_TIPO,TC8->T8_FORNECE,TC8->T8_LOJA,TC8->T8_NOMFOR,TC8->T8_EMISSAO,TC8->T8_VENCREA,TC8->T8_VALOR,TC8->T8_SALDO,TC8->T8_NATUREZ})
TC8->(dbSkip())
Enddo
TC8->(dbCloseArea())
ENDIF
//
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
- diegobertodo
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 75
- Obrigados Recebidos: 0
9 anos 4 meses atrás #28553
por diegobertodo
Respondido por diegobertodo no tópico Marcar e Desmarcar Não Funciona
Deve haver algum "MV" para quem marca ou não...
Por favor Acessar ou Registrar para participar da conversa.
- adautojunior
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 15
- Obrigados Recebidos: 0
9 anos 4 meses atrás #28554
por adautojunior
Respondido por adautojunior no tópico Marcar e Desmarcar Não Funciona
O fórum cortou parte do código... Segue fonte em anexo!
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
9 anos 4 meses atrás #28555
por kanaamlrr
Respondido por kanaamlrr no tópico Marcar e Desmarcar Não Funciona
Os arquivos anexos devem ser zipados.
Quando for colocar um código, utilize as tags code e /code para que o código fiquei correto.
At.,
Kanaãm.
Quando for colocar um código, utilize as tags code e /code para que o código fiquei correto.
At.,
Kanaãm.
Por favor Acessar ou Registrar para participar da conversa.
- adautojunior
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 15
- Obrigados Recebidos: 0
9 anos 4 meses atrás #28556
por adautojunior
Respondido por adautojunior no tópico Marcar e Desmarcar Não Funciona
Desculpe! Arquivo zipado em anexo!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Marcar e Desmarcar Não Funciona
Tempo para a criação da página:0.157 segundos