Unisci i risultati del file Excel esterno
Struttura
MergeExternalExcelFileResults(sFileList, iMergePDFStartPages, iMergePDFEndPages, sPageNumberFormat, dPageNumberX, dPageNumberY, sPageNumberAlign, iPageNumberFontSize)
Tipo
Funzione
Descrizione
Questa procedura unirà una parte dei risultati provenienti da più file Excel esterni e creerà un unico file PDF. Il PDF risultante viene salvato temporaneamente nel database in modo da poter essere successivamente unito al certificato creato con PrintBuilder (in genere da questo certificato viene prelevata una pagina di intestazione, poi viene inserita una pagina finale alla fine, con i risultati di Excel al centro del PDF). Le sezioni da esportare da ciascun file Excel sono definite nella scheda "PDF Output", proprio come quando si utilizza il tipo di punto di test "Excel con esportazione in PDF". Il file Excel viene solitamente aperto dall'interno dello stesso progetto di script utilizzando la procedura LaunchExternalExcelFile.
Parametri = 8
sFileList = un elenco dei file Excel da unire, separati da virgola. Dovrebbe trattarsi del percorso completo, comprensivo di directory/sottodirectory + nome del file + estensione.
iMergePDFStartPages = il numero di pagine da prelevare dall'inizio del certificato PrintBuilder corrispondente e da unire all'inizio del PDF finale, prima dei risultati di Excel.
iMergePDFEndPages = il numero di pagine da prelevare dalla fine del certificato PrintBuilder corrispondente e da unire alla fine del PDF finale, dopo i risultati di Excel.
sPageNumberFormat = Una volta creato il PDF, il testo del numero di pagina viene inserito su tutte le pagine. Questo è il formato del testo. Si noti che gli elementi di unione «[Pagina]» e «[Totale]» vengono sostituiti dai valori effettivi. Esempio: «Pagina [Pagina] di [Totale]»
dPageNumberX = La posizione X del testo del numero di pagina su tutte le pagine.
dPageNumberY = La posizione Y del testo del numero di pagina su tutte le pagine.
sPageNumberAlign = L'allineamento del testo del numero di pagina rispetto alla posizione sopra indicata. I valori possibili sono «LEFT», «CENTER» e «RIGHT».
iPageNumberFontSize = La dimensione del carattere del testo del numero di pagina su tutte le pagine.
Valore restituito
La funzione restituisce "1" in caso di esito positivo o "0" in caso di esito negativo.
Esempio
Pascal
sAllExcelFiles := ''; // valore predefinito
dxmdExcelFiles.DisableControls;
try
dxmdExcelFiles.First;
while not dxmdExcelFiles.EOF do
begin
if sAllExcelFiles <> '' then sAllExcelFiles := sAllExcelFiles + ',';
if Trim(dxmdExcelFiles.FieldbyName('FILE_NAME').AsString) <> '' then sAllExcelFiles := sAllExcelFiles + sIndyTempDir + Trim(dxmdExcelFiles.FieldbyName('FILE_NAME').AsString);
dxmdExcelFiles.Next;
end;
finally
dxmdExcelFiles.EnableControls;
end;
if (Sender = bMergeAll) then
begin
Screen.Cursor := crHourglass;
try
bMerged := MergeExternalExcelFileResults(sAllExcelFiles,
1, // iMergePDFStartPages
1, // iMergePDFEndPages
'Pagina [Pagina] di [Totale]', // sPageNumberFormat
6.20, // dPageNumberX
10.85, // dPageNumberY
'LEFT', // sPageNumberAlign
10); // iPageNumberFontSize
finally
Screen.Cursor := crDefault;
end;
if not bMerged then ShowMessage('Errore: File NON uniti.')
end;