Créer un fichier Excel à  partir d’une requête SQL

Les étapes.

 ETAPE 1 : Création d’un fichier temporaire contenant la sélection (avec SQL).


CREATE TABLE QTEMP/TMPXLS AS (SELECT * FROM FICHIER)
WITH DATA

 ETAPE 2 : Copy du fichier vers l’IFS (Ligne de commande).

CPYTOIMPF FROMFILE(QTEMP/TMPXLS)
TOSTMF(‘/HOME/XLS/fichier.xls’)
MBROPT(*REPLACE)
STMFCODPAG(*PCASCII)
RCDDLM(*CRLF)
DTAFMT(*DLM)
STRDLM(*NONE)
FLDDLM(X’05’)
DECPNT(*COMMA)

 ETAPE 3 : Suppression du fichier temporaire (avec SQL).

DROP TABLE QTEMP/TMPXLS

Un exemple.

 Exécuter la requête suivante, crée dans le fichier TMPXLS de QTEMP, les infos sur la structure des tables TABLE1 et TABLE2 :


CREATE TABLE QTEMP/TMPXLS AS (
SELECT
DBIFIL AS TABLE
, DBIFLD AS CHAMP
, DBIPOS AS POSITION
, DBITXT AS TEXTE
, DBITYP AS TYPE
, COALESCE(CAST(DBICLN AS CHAR(4)), CAST(DBINLN AS CHAR(4))) AS LNG1
, COALESCE(CAST(DBINSC AS CHAR(1)), ' ') AS LNG2
FROM QADBIFLD
WHERE
DBIFIL IN ( 'TABLE1' , 'TABLE2' )
AND DBILIB = 'REFDTA'
ORDER
BY DBIFIL, DBIPOS
) WITH DATA

 Exécuter la commande suivante pour créer le fichier Excel correspondant :


CPYTOIMPF FROMFILE(QTEMP/TMPXLS)
TOSTMF(‘HOME/XLS/fichier.xls’)
MBROPT(*REPLACE)
STMFCODPAG(*PCASCII)
RCDDLM(*CRLF)
DTAFMT(*DLM)
STRDLM(*NONE)
FLDDLM(X’05’)
DECPNT(*COMMA)

 Supprimer le fichier TMPXLS de QTEMP :


DROP TABLE QTEMP/TMPXLS

Print Friendly, PDF & Email