- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW)
×
Linguagem de Programação ADVPL
Perguntas Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW)
- rtsouza777@hotmail.com
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 7
- Obrigados Recebidos: 0
10 anos 8 meses atrás #21550
por rtsouza777@hotmail.com
Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW) foi criado por rtsouza777@hotmail.com
Boa tarde a todos !!!
Estou com esta mensagem de erro sendo gravada no console.log do ambiente WORKFLOW:
/*
THREAD ERROR ([2468], ___, ) 14/03/2014 11:21:01
Stack :
variable does not exist __CRDD on CHKFILE(APLIB200.PRW) 05/12/2013 14:01:39 line : 769
[build: 7.00.121227P-20130625]
[environment: WORKFLOW]
[thread: 2468]
[rpodb: SQL]
[localfiles: CTREE]
[remark: U_WFFIN001|01|0101]
[threadtype: JobThread]
Called from U_WFFIN001(WFFIN001.PRW) 14/03/2014 11:17:26 line : 38
Called from WFLAUNCHER(WF.PRW) 20/09/2013 16:57:56 line : 476
Segue fonte do relatorio, caso alguem tenha uma dica ai e ja vivenciou este problema e puder me ajudar, agradeço.
#include "rwmake.ch"
#include "TbiConn.ch"
#include "TbiCode.ch"
#Include "topconn.ch"
#Include "protheus.ch"
#Include "totvs.ch"
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ WFFIN001 ºAutor ³ Rodrigo Teixeira Data ³ Marco/2014 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ Workflow de Titulos Vencidos Contas a Receber º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ DataTraffic º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function WFFIN001()
Local _cIndex, _cFiltro, _cOrdem, _lProcesso := .F.
Local _cOpcao, _cObs
Local lLiberou := .F. , cObs := "", cMotivo := ""
Local _Fl := CHR(13)
Local _nDias := 0
Local _dDias := Date() - _nDias //calcula a data para envio
Public _dData := _ConvData(DtoS(date()),1)
Public _cFilial := ""
//Tipo de Email
//If _nOPC == "1"
//Gravando Inicio do Processo do WF no Console.LOG
ConOut("WFFIN001 - Workflow de Titulos Vencidos - Contas a Receber - Inicio: "+Time())
CHKFILE("SE1",.F.,"SE1")
_cFilial := substring(cNumEmp,1,4)
// CRIAR QUERY DE LEITURA DOS DADOS
_nDias := GetMV("MV_DIASF") //parametro com o numero de dias que sera subtraido da database
_dDias := Date() - _nDias //calcula a data para envio
//Query para buscar os titulos vencidos
_cQuery := ""
_cQuery := " SELECT SE1.E1_FILIAL,SE1.E1_CLIENTE, SE1.E1_NOMCLI, SA1.A1_EMAIL, SE1.E1_LOJA, SE1.E1_NUM, SE1.E1_SERIE, SE1.E1_EMISSAO, SE1.E1_VENCREA, SE1.E1_VALOR "+_Fl
_cQuery += " FROM "+RetSqlName("SE1") + " SE1 INNER JOIN " + RetSqlName("SA1") + " SA1 ON SA1.A1_COD=SE1.E1_CLIENTE AND SA1.A1_ENVMAIL='S' AND SA1.A1_EMAIL<>'' AND SA1.D_E_L_E_T_='' AND SA1.A1_FILIAL='' "+_Fl
_cQuery += " WHERE SE1.E1_VENCREA <= " +DTOS(_dDias)+" AND (SE1.E1_TIPO= 'NF' OR SE1.E1_TIPO= 'DP') "+_Fl
_cQuery += " AND SE1.E1_BAIXA='' "+_Fl
_cQuery += " AND SE1.D_E_L_E_T_='' "+_Fl
_cQuery += " AND SE1.E1_FILIAL = '"+_cFilial+"'"
_cQuery += " ORDER BY SE1.E1_CLIENTE DESC"+_Fl
//MemoWrite("D:\QryWFTit.SQL", _cQuery)
If Select("TMP01") > 0
TMP01->(DbCloseArea())
Endif
TcQuery _cQuery NEW Alias "TMP01"
dbSelectArea("TMP01")
dbGoTop()
//Se Tem informações Envia Email
if ! TMP01->(Eof())
// EnviaEP( _cFilial, _cFornece ,_cLOJA ,_cNum, , _cChave) ,_cWF
// _cWFId := EnvWFFIN(TMP01->C7_FILIAL,TMP01->C7_FORNECE,TMP01->C7_LOJA,TMP01->C7_NUM,TMP01->(C7_FILIAL+C7_FORNECE+C7_NUM),"1")
_cWFId := EnvWFFIN(TMP01->E1_FILIAL, TMP01->E1_FILIAL+TMP01->E1_CLIENTE, "1") //Chamada da Função de Envio do Email
_lProcesso := .T.
ELSE
ConOut("Sem Titulos a Receber - "+_dData)
Endif
// Endif
If _lProcesso
ConOut(" WorkFlow WFFIN001 - Enviado: "+Time())
Else
ConOut(" WorkFlow WFFIN001 - Nao Enviado: "+Time())
EndIf
Return
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³Envia EmailºAutor ³ Rodrigo Teixeira º Data ³ Mar/2014 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ º±±
±±º ³ _cWF ' ' - Envia email para os responsaveis º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ WFFIN001 º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function EnvWFFIN( _cXFilial, _cXChave , _cXWF )
Local _cWFId := ''
Local _nTotal:= 0
lDetalhe := .F.
IF TRIM(_cXWF) == "1"
dbSelectArea("TMP01")
dbGoTop()
While ! TMP01->(EOF())
//FUNCOES PARA ENVIO DE HTML
oProcess:= TWFProcess():New( "000001", "WorkFlow de Titulos Vencidos - Contas a Receber "+_dData )
oProcess :NewTask( "Workflow de Titulos Vencidos - Contas a Receber" , "\WORKFLOW\FINWF001.htm" )
oProcess:cSubject := "Titulos Vencidos - Contas a Receber - Data de Envio: "+_dData
oProcess:NewVersion(.T.)
oHtml := oProcess:oHtml
// Hidden Fields
oHtml:ValByName( "CHAVE" , _cXChave)
oHtml:ValByName( "CFILANT" , _cXFilial)
oHtml:ValByName( "WFID" , oProcess:fProcessId)
oHtml:ValByName("Cliente",left(TMP01->E1_CLIENTE,6)+" - "+LEFT(TMP01->E1_NOMCLI,30))
//titulos
oHtml:ValByName("it1.nota" , {})
oHtml:ValByName("it1.serie" , {})
oHtml:ValByName("it1.emissao" , {})
oHtml:ValByName("it1.vencto" , {})
oHtml:ValByName("it1.total" , {})
_cLojaCli := TMP01->E1_CLIENTE+TMP01->E1_LOJA //armazena os codigos iniciais
_nTotal := 0
//enquanto for o mesmo cliente adiociona os dados
While ! TMP01->(EOF())
if _cLojaCli = TMP01->E1_CLIENTE + TMP01->E1_LOJA
aadd((oHtml:ValByName("it1.nota" )) , TMP01->E1_NUM)
aadd((oHtml:ValByName("it1.serie" )) , TMP01->E1_SERIE)
aadd((oHtml:ValByName("it1.emissao")) , _ConvData(TMP01->E1_EMISSAO,1))
aadd((oHtml:ValByName("it1.vencto")) , _ConvData(TMP01->E1_VENCREA,1))
aadd((oHtml:ValByName("it1.total" )) , TRANSFORM(TMP01->E1_VALOR ,'@R 9999,999.99'))
_nTotal += TMP01->E1_VALOR
endif
_cLojaCli := TMP01->E1_CLIENTE+TMP01->E1_LOJA
_cPara := ""
_cPara := TMP01->A1_EMAIL
dbselectarea("TMP01")
dbSkip()
if TMP01->(EOF()) .or. (AllTrim(TMP01->E1_CLIENTE)+(TMP01->E1_LOJA))<>_cLojaCli
exit
endif
EndDo
oHtml:ValByName("Total",TRANSFORM(_nTotal ,'@R 9999,999.99'))
//envia o e-mail
//_cUser := Subs(cUsuario,7,15)
//oProcess:ClientName(_cUser)
oProcess:cTo := _cPara
_Subj := "Titulos Vencidos - Contas a Receber - Data de Envio: "+_dData
oProcess:cSubject := _Subj
oProcess:Start()
dbselectarea("TMP01")
if TMP01->(EOF())
exit
endif
EndDo
//fecha a conexão
ConOut("Final do WorkFlow de Titulos Vencidos - Contas a Receber: "+Time())
oProcess:Finish() // FINALIZA O PROCESSO
// RESET ENVIRONMENT
DbCloseAll()
Endif
Return _cWFId
/********************************
Funcao para Converter Datas
*********************************
*/
Static Function _ConvData(_xData,_xTp)
Local _lData := ""
if _xTp==1
_lData := substring(_xData,7,2)+'/'+substring(_xData,5,2)+'/'+substring(_xData,1,4)
endif
Return(_lData)
//******************************
Abraços!
Rodrigo Teixeira
Estou com esta mensagem de erro sendo gravada no console.log do ambiente WORKFLOW:
/*
THREAD ERROR ([2468], ___, ) 14/03/2014 11:21:01
Stack :
variable does not exist __CRDD on CHKFILE(APLIB200.PRW) 05/12/2013 14:01:39 line : 769
[build: 7.00.121227P-20130625]
[environment: WORKFLOW]
[thread: 2468]
[rpodb: SQL]
[localfiles: CTREE]
[remark: U_WFFIN001|01|0101]
[threadtype: JobThread]
Called from U_WFFIN001(WFFIN001.PRW) 14/03/2014 11:17:26 line : 38
Called from WFLAUNCHER(WF.PRW) 20/09/2013 16:57:56 line : 476
Segue fonte do relatorio, caso alguem tenha uma dica ai e ja vivenciou este problema e puder me ajudar, agradeço.
#include "rwmake.ch"
#include "TbiConn.ch"
#include "TbiCode.ch"
#Include "topconn.ch"
#Include "protheus.ch"
#Include "totvs.ch"
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ WFFIN001 ºAutor ³ Rodrigo Teixeira Data ³ Marco/2014 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ Workflow de Titulos Vencidos Contas a Receber º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ DataTraffic º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function WFFIN001()
Local _cIndex, _cFiltro, _cOrdem, _lProcesso := .F.
Local _cOpcao, _cObs
Local lLiberou := .F. , cObs := "", cMotivo := ""
Local _Fl := CHR(13)
Local _nDias := 0
Local _dDias := Date() - _nDias //calcula a data para envio
Public _dData := _ConvData(DtoS(date()),1)
Public _cFilial := ""
//Tipo de Email
//If _nOPC == "1"
//Gravando Inicio do Processo do WF no Console.LOG
ConOut("WFFIN001 - Workflow de Titulos Vencidos - Contas a Receber - Inicio: "+Time())
CHKFILE("SE1",.F.,"SE1")
_cFilial := substring(cNumEmp,1,4)
// CRIAR QUERY DE LEITURA DOS DADOS
_nDias := GetMV("MV_DIASF") //parametro com o numero de dias que sera subtraido da database
_dDias := Date() - _nDias //calcula a data para envio
//Query para buscar os titulos vencidos
_cQuery := ""
_cQuery := " SELECT SE1.E1_FILIAL,SE1.E1_CLIENTE, SE1.E1_NOMCLI, SA1.A1_EMAIL, SE1.E1_LOJA, SE1.E1_NUM, SE1.E1_SERIE, SE1.E1_EMISSAO, SE1.E1_VENCREA, SE1.E1_VALOR "+_Fl
_cQuery += " FROM "+RetSqlName("SE1") + " SE1 INNER JOIN " + RetSqlName("SA1") + " SA1 ON SA1.A1_COD=SE1.E1_CLIENTE AND SA1.A1_ENVMAIL='S' AND SA1.A1_EMAIL<>'' AND SA1.D_E_L_E_T_='' AND SA1.A1_FILIAL='' "+_Fl
_cQuery += " WHERE SE1.E1_VENCREA <= " +DTOS(_dDias)+" AND (SE1.E1_TIPO= 'NF' OR SE1.E1_TIPO= 'DP') "+_Fl
_cQuery += " AND SE1.E1_BAIXA='' "+_Fl
_cQuery += " AND SE1.D_E_L_E_T_='' "+_Fl
_cQuery += " AND SE1.E1_FILIAL = '"+_cFilial+"'"
_cQuery += " ORDER BY SE1.E1_CLIENTE DESC"+_Fl
//MemoWrite("D:\QryWFTit.SQL", _cQuery)
If Select("TMP01") > 0
TMP01->(DbCloseArea())
Endif
TcQuery _cQuery NEW Alias "TMP01"
dbSelectArea("TMP01")
dbGoTop()
//Se Tem informações Envia Email
if ! TMP01->(Eof())
// EnviaEP( _cFilial, _cFornece ,_cLOJA ,_cNum, , _cChave) ,_cWF
// _cWFId := EnvWFFIN(TMP01->C7_FILIAL,TMP01->C7_FORNECE,TMP01->C7_LOJA,TMP01->C7_NUM,TMP01->(C7_FILIAL+C7_FORNECE+C7_NUM),"1")
_cWFId := EnvWFFIN(TMP01->E1_FILIAL, TMP01->E1_FILIAL+TMP01->E1_CLIENTE, "1") //Chamada da Função de Envio do Email
_lProcesso := .T.
ELSE
ConOut("Sem Titulos a Receber - "+_dData)
Endif
// Endif
If _lProcesso
ConOut(" WorkFlow WFFIN001 - Enviado: "+Time())
Else
ConOut(" WorkFlow WFFIN001 - Nao Enviado: "+Time())
EndIf
Return
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³Envia EmailºAutor ³ Rodrigo Teixeira º Data ³ Mar/2014 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ º±±
±±º ³ _cWF ' ' - Envia email para os responsaveis º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ WFFIN001 º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function EnvWFFIN( _cXFilial, _cXChave , _cXWF )
Local _cWFId := ''
Local _nTotal:= 0
lDetalhe := .F.
IF TRIM(_cXWF) == "1"
dbSelectArea("TMP01")
dbGoTop()
While ! TMP01->(EOF())
//FUNCOES PARA ENVIO DE HTML
oProcess:= TWFProcess():New( "000001", "WorkFlow de Titulos Vencidos - Contas a Receber "+_dData )
oProcess :NewTask( "Workflow de Titulos Vencidos - Contas a Receber" , "\WORKFLOW\FINWF001.htm" )
oProcess:cSubject := "Titulos Vencidos - Contas a Receber - Data de Envio: "+_dData
oProcess:NewVersion(.T.)
oHtml := oProcess:oHtml
// Hidden Fields
oHtml:ValByName( "CHAVE" , _cXChave)
oHtml:ValByName( "CFILANT" , _cXFilial)
oHtml:ValByName( "WFID" , oProcess:fProcessId)
oHtml:ValByName("Cliente",left(TMP01->E1_CLIENTE,6)+" - "+LEFT(TMP01->E1_NOMCLI,30))
//titulos
oHtml:ValByName("it1.nota" , {})
oHtml:ValByName("it1.serie" , {})
oHtml:ValByName("it1.emissao" , {})
oHtml:ValByName("it1.vencto" , {})
oHtml:ValByName("it1.total" , {})
_cLojaCli := TMP01->E1_CLIENTE+TMP01->E1_LOJA //armazena os codigos iniciais
_nTotal := 0
//enquanto for o mesmo cliente adiociona os dados
While ! TMP01->(EOF())
if _cLojaCli = TMP01->E1_CLIENTE + TMP01->E1_LOJA
aadd((oHtml:ValByName("it1.nota" )) , TMP01->E1_NUM)
aadd((oHtml:ValByName("it1.serie" )) , TMP01->E1_SERIE)
aadd((oHtml:ValByName("it1.emissao")) , _ConvData(TMP01->E1_EMISSAO,1))
aadd((oHtml:ValByName("it1.vencto")) , _ConvData(TMP01->E1_VENCREA,1))
aadd((oHtml:ValByName("it1.total" )) , TRANSFORM(TMP01->E1_VALOR ,'@R 9999,999.99'))
_nTotal += TMP01->E1_VALOR
endif
_cLojaCli := TMP01->E1_CLIENTE+TMP01->E1_LOJA
_cPara := ""
_cPara := TMP01->A1_EMAIL
dbselectarea("TMP01")
dbSkip()
if TMP01->(EOF()) .or. (AllTrim(TMP01->E1_CLIENTE)+(TMP01->E1_LOJA))<>_cLojaCli
exit
endif
EndDo
oHtml:ValByName("Total",TRANSFORM(_nTotal ,'@R 9999,999.99'))
//envia o e-mail
//_cUser := Subs(cUsuario,7,15)
//oProcess:ClientName(_cUser)
oProcess:cTo := _cPara
_Subj := "Titulos Vencidos - Contas a Receber - Data de Envio: "+_dData
oProcess:cSubject := _Subj
oProcess:Start()
dbselectarea("TMP01")
if TMP01->(EOF())
exit
endif
EndDo
//fecha a conexão
ConOut("Final do WorkFlow de Titulos Vencidos - Contas a Receber: "+Time())
oProcess:Finish() // FINALIZA O PROCESSO
// RESET ENVIRONMENT
DbCloseAll()
Endif
Return _cWFId
/********************************
Funcao para Converter Datas
*********************************
*/
Static Function _ConvData(_xData,_xTp)
Local _lData := ""
if _xTp==1
_lData := substring(_xData,7,2)+'/'+substring(_xData,5,2)+'/'+substring(_xData,1,4)
endif
Return(_lData)
//******************************
Abraços!
Rodrigo Teixeira
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
10 anos 8 meses atrás #21559
por kanaamlrr
Respondido por kanaamlrr no tópico Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW)
Rodrigo,
Aparentemente você esqueceu de utilizar o prepare environment no inicio do seu fonte.
Adicione ele antes da linha do chkfile()
tdn.totvs.com/pages/releaseview.action?pageId=6814708
abraço!
Aparentemente você esqueceu de utilizar o prepare environment no inicio do seu fonte.
Adicione ele antes da linha do chkfile()
tdn.totvs.com/pages/releaseview.action?pageId=6814708
abraço!
Por favor Acessar ou Registrar para participar da conversa.
- rtsouza777@hotmail.com
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 7
- Obrigados Recebidos: 0
10 anos 8 meses atrás #21620
por rtsouza777@hotmail.com
Respondido por rtsouza777@hotmail.com no tópico Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW)
Boa tarde Kanaãn,
Era esse o problema mesmo brother....
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01" MODULO "FAT"
valeu demais !
Abç!
Era esse o problema mesmo brother....
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01" MODULO "FAT"
valeu demais !
Abç!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Erro envio Relatorio pelo Schedule - Variavel nao existe _CRDD (APLIB200.PRW)
Tempo para a criação da página:0.136 segundos