|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
Geração de PDF com senha |
|
Versão: |
12.1.8 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
IZILDINHAK
em 25/02/2019, 10:43 h
Local: SP Registro: 06/12/2011 Postagens: 57 |
Bom dia,
Estou precisando gerar um arquivo PDF com senha, já tenho o programa que gera o PDF normal.
Verifiquei neste link http://tdn.totvs.com/pages/viewpage.action?pageId=244436867 que é possível gerar o PDF com senha, mas, não consegui entender como. Fiz alguns testes mas não deu certo.
Alguém poderia me passar um exemplo de como ficaria a function File2Printer() utilizando senha ?
Izildinha R. A. Kavai
MACKSYS TECNOLOGIA LTDA - EPP
Tel.: 999516022 |
|
|
Mensagem do
IZILDINHAK
em 25/02/2019, 12:01 h
Local: SP Registro: 06/12/2011 Postagens: 57 |
Eu tentei fazer assim:
cUserPwd:=‘1234567890‘
cOwnerPwd:=‘1Abcdefghi‘
file2Printer(cFile, ‘PDF_WITH_PASSWORD‘, cRFS, nSize, lChangeCase, cUserPwd, cOwnerPwd)
mas quando vou abrir o arquivo, ele não pede senha.
Izildinha R. A. Kavai
MACKSYS TECNOLOGIA LTDA - EPP
Tel.: 999516022 |
|
|
Mensagem do
IZILDINHAK
em 26/02/2019, 10:09 h
Local: SP Registro: 06/12/2011 Postagens: 57 |
Bom dia gente,
Acabei de ser informada pela Totvs que a function file2Printer esta na LISTA DE RECURSOS RESTRITOS, e por isso não tem suporte para customizações.
Alguém sabe algum outro jeito de gerar um PDF com senha ?
Izildinha R. A. Kavai
MACKSYS TECNOLOGIA LTDA - EPP
Tel.: 999516022 |
|
|
Mensagem do
EMECAMPOS
em 08/01/2021, 13:19 h
Local: SP Registro: 15/12/2009 Postagens: 11 |
Olá boa tarde,
Conseguiu achar uma solução para resolver o problema da senha no PDF?
Estou nesse mesmo passo em que você citou acima.
Obrigado![/GREEN] |
|
|
Mensagem do
LCA.LEO
em 08/01/2021, 15:48 h
Local: PR Registro: 09/01/2020 Postagens: 25 |
Boa tarde,
Aqui na empresa começamos a imprimir boleto com senha, tem uns três meses.
Segue trecho para a geração do PDF com senha.
Private lAdjustToLegacy := .F.
Private lDisableSetup := .T.
Private lServer := .T. //Indica impressão via Server (.REL Não será copiado para o Client). Default é .F <<<<<<<<<----------------------iMPORTANTE----------
Private lViewPDF := .F. // Quando o tipo de impressão for PDF, define se arquivo será exibido após a impressão. O default é .T.
//Função de deleção de arquivos antigos
cDir := cLocal2+‘BOLETO*.*‘
aAnexos := DIRECTORY(cDir ,,,.T.)
For i:= 1 to len(aAnexos)
IF aAnexos[3] < date()
FErase(cLocal2+aAnexos[1])
ENDIF
Next
//Nome do arquivo a ser salvo na pasta \TEMP\IMP\//
_cNome := "BOLETO_ITAU_"+DTOS(DATE())+strtran(time(),":","")
//Atribuição das regras ao objeto
oPrinter := FWMSPrinter():New(_cNome, IMP_SPOOL, lAdjustToLegacy, cLocal2,lDisableSetup,NIL, NIL, "PDF", lServer, NIL, NIL, lViewPDF) //<--- a impressão deve ser realizada por IMP_SPOOL, caso contrário não dará certo.
oPrinter:SetResolution(78) //Tamanho estipulado para a Danfe
oPrinter:SetPortrait()
oPrinter:SetPaperSize(9)
oPrinter:SetMargin(60,60,60,60)
//Imprime todos registros selecionados
U_ImpYBol(RECNO())
cFilePrint := cLocal2+_cNome
File2Printer(cFilePrint, "PDF")
oPrinter:cPathPDF:= cLocal2
oPrinter:SetViewPDF(.F.) //<----------------------- tem que ser falso
oPrinter:EndPage() //<---------------------importante
oPrinter:Preview(.F.) //<--------------------- tem que ser falso
// AQUI ELE GEROU O ARQUIVO .REL E PDF, SEM SENHA
cSenhaUsr := substr(CPFouCNPJ,1,6)
nRet := ShellExecute( "Open", "C:\Totvs\SmartClient\printer.exe", cLocal2+_cNome+".rel PDF_WITH_PASSWORD "+cSenhaUsr +" "+ SenhaMaster, cLocal2, 1) //<------ AQUI ELE PÔS A SENHA NO PDF.
Lè0 |
|
|
Mensagem do
JULIO.DIIA
em 09/08/2021, 16:15 h
Local: SP Registro: 09/08/2021 Postagens: 1 |
Pessoal, boa tarde.
Utilizei informações deste fórum para construir um exemplo prático.
Segue abaixo.
É só compilar e executar.
#INCLUDE "TOTVS.CH"
/*/{Protheus.doc} TSTFINXY
Teste gerar arquivo PDF com senha
@type function
@author Júlio César Dias de Oliveira
@since 09/08/2021
@version P12
@database MSSQL
/*/
User Function TSTFINXY()
Local cNome := "" as character
Local cSenhaRelatorio := "" as character
Local oPrinter := Nil as object
Local lAdjustToLegacy := .F. as logical
Local lDisableSetup := .T. as logical
Local lServer := .T. as logical // Indica impressão via Server (.REL Não será copiado para o Client). Default é .F <<<<<<<<<----------------------iMPORTANTE----------
Local lViewPDF := .F. as logical // Quando o tipo de impressão for PDF, define se arquivo será exibido após a impressão. O default é .T.
Local cLocal := "C:\TEMP"
cNome := "TESTE_PDF_"+DTOS(DATE())+strtran(time(),":","")
/*
A senha Não pode conter apenas numéros, Não pode ser grande, caso contrário acontecerá o erro:
Runtime Error!
Program: C:\Totvs\Smartclient\LOCAL\printer.exe
This application has request the Runtime to terminate it in an unusual way.
Please contatct the application‘s support team for more information.
*/
cSenhaRelatorio := "b07085"
oPrinter := FWMSPrinter():New(cNome,,lAdjustToLegacy,cLocal,lDisableSetup,NIL, NIL, "PDF", lServer, NIL, NIL, lViewPDF) //<--- a impressão deve ser realizada por IMP_SPOOL, caso contrário não dará certo.
oPrinter:cPathPDF :="C:\TEMP\"
oPrinter:Say(10,0,"Texto do relatório")
oPrinter:SetViewPDF(.F.)
oPrinter:EndPage()
oPrinter:Preview(.F.)
ShellExecute( "Open", "C:\Totvs\Smartclient\LOCAL\printer.exe", "C:\temp\"+cNome+".rel PDF_WITH_PASSWORD senhauser "+cSenhaRelatorio,"C:\temp", 1 )
Return
|
|
|
Mensagem do
ELISANDRA
em 13/06/2023, 16:54 h
Local: SP Registro: 21/01/2013 Postagens: 12 |
Boa tarde pessoal.
Por favor, será que alguém pode me ajudar, tenho um fonte customizado de boletos, agora preciso colocar senha nesses boletos, usei os dois exemplos acima, mais o bmais o boleto gera em branco, alguém sabe o que pode ser?
Alguém usa boleto customizado com senha? |
|
|
Mensagem do
IZKAVAI
em 28/06/2023, 12:02 h
Local: SP Registro: 26/02/2021 Postagens: 13 |
Bom dia,
Acho que esta faltando oPrint:StartPage()
Eu faço nesta sequencia antes so comando shellexecute
//pagina de informações do boleto
oPrint:StartPage() // Inicia uma nova página
//função que imprime o corpo do arquivo utilizando o oPrint:Say Impress(oPrint,aDadosEmp,aDadosTit,aDadosBanco,aDatSacado,aBolText,CB_RN_NN)
//Seta para nao apresentar o arquivo na tela
oPrint:SetViewPDF(.F.)
// Finaliza a página
oPrint:EndPage()
oPrint:Preview(.F.)
espero ter ajudado
|
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|