Ir diretamente para o conteúdo principal

Aguardar a criação do relatório personalizado

Estrutura

CreateCustomReportWait(sReportName, sEMailTo, sEMailSubject, sEMailBody, sSQL, sTableForUpdate, sFieldForUpdate, sWhereForUpdate, sPrintTo, sFileName: String)

Parâmetros

| Parâmetro | Tipo | Descrição
| sReportName | String | o nome do relatório PERSONALIZADO que deve ser criado - tal como criado no PrintBuilder...Relatórios Personalizados sEMailTo | String | endereços que devem receber o e-mail, delimitados por ponto e vírgula sEMailSubject | String | assunto dos e-mails sEMailBody | String | corpo do e-mail, pode incluir retornos de carro utilizando os símbolos Chr(13) SQL | String | este parâmetro opcional fará com que este SQL seja utilizado para o conjunto de dados principal no relatório EM VEZ do SQL no designer de relatórios IndySoft. Isto aplica-se apenas ao conjunto de dados principal (não aos conjuntos de dados detalhados). O relatório não deve utilizar campos de pesquisa automática. Sugere-se que o código SQL exato do IndySoft Report Designer seja primeiro localizado através do DBLog.exe ou do AppServerLog.exe e, em seguida, que esse código SQL exato seja utilizado como modelo para a sua eventual modificação nesta variável.sTableForUpdate | String | utilizado apenas na atualização de bases de dadosFieldForUpdate | String | utilizado apenas na atualização de bases de dados, o campo blob onde o relatório resultante deve ser anexado após a criaçãoWhereForUpdate | String | a cláusula WHERE que deve ser utilizada na tabela/campo acima, para guardar no registo correto. Comece o texto com «WHERE »sPrintTo | String | o destino do relatório. Os valores possíveis são: PDF, XLS, JPG, RTF, TXT, PRINTER, SCREENsFileName | String | pode ser o nome completo do ficheiro que pretende utilizar (se for o caso) ou a palavra «PROMPT» — nesse caso, será apresentada uma caixa de diálogo para indicar o nome do ficheiro ou o diretório. Qualquer extensão de ficheiro no final de sFileName é ignorada — tal é determinado pela variável sPrintTo acima. sFileName pode ser um diretório ou um nome de ficheiro completo com o caminho. |

Descrição

Este procedimento cria um relatório personalizado do IndySoft, mas aguarda até que o relatório esteja totalmente criado antes de retomar a execução do script. O relatório pode ser enviado por e-mail, caso tenham sido definidas as configurações de e-mail. O relatório pode ser gerado para o ecrã ou para a impressora, se tal for especificado em sPrintTo. Também é possível especificar o código SQL completo utilizado no pipeline de dados principal — isto substituirá o código SQL predefinido no relatório. Além disso, o relatório pode, opcionalmente, ser guardado num campo blob na base de dados.

Exemplo

sDocName = "TESTDOC"

' se for guardar na base de dados mais tarde, defina primeiro a localização do trabalho de impressão final - a função CreateCustomReport irá anexá-lo, com base nos últimos 3 parâmetros

' note que uma ação de gatilho tardia, como After Finish - Before Print, é adequada, utilizando LookupFinalEventNum

if not tdDoSQLRecords(1, "SELECT DOC_NUM FROM EVENTDOCS WHERE EVENT_NUM = " & LookupFinalEventNum & " AND DOC_NUM = '" & sDocName & "'") then RunSQL("INSERT INTO EVENTDOCS (EVENT_NUM, DOC_NUM, DOC_DATE, FILE_NAME, DOC_TYPE, PRINTING_COMPLETE) VALUES (" & LookupFinalEventNum & ", '" &

sDocName & "', '" & FormatDateTimeForSQL(Date) & "', '" & sDocName & ".PDF', '4', '0')")

End If

CreateCustomReport("EXAMPLE", "eddie@notreal.com;suzie.office@notreal.com", "Aqui está o seu relatório - pare de me incomodar",

"Este é o corpo do e-mail" & Chr(13) & "Esta é a segunda linha do corpo do e-mail",

"SELECT GAGES.COMPANY, GAGES.GAGE_SN, GAGES.GAGE_ID, SCHEDGI.SCHED_TYPE, SCHEDGI.SCHED_FREQ, SCHEDGI.SCHED_INTERVAL, SCHEDGI.SCHED_LAST, SCHEDGI.SCHED_DUE_DATE FROM GAGES GAGES" &

"LEFT OUTER JOIN SCHEDGI SCHEDGI ON (SCHEDGI.COMPANY = GAGES.COMPANY) AND (SCHEDGI.GAGE_SN = GAGES.GAGE_SN) WHERE (GAGES.COMPANY = 'ABC COMPANY' AND SCHEDGI.SCHED_TYPE = 'CALIBRATION')",

"EVENTDOCS", "DOC_BLOB", "WHERE EVENT_NUM = " & LookupFinalEventNum & " AND DOC_NUM = '" & sDocName & "'", "PDF", "IndySoftEventReport")

Compatibilidade de aplicações

Gestão de Calibração IndySoft, Gestão de Laboratórios Comerciais IndySoft, Gestão de Ferramentas IndySoft

Veja também

Sem tópicos relacionados |