Dans cet exemple, la base de donnée adressée a les caractéristiques suivantes :
• Type DB: SAP
• Adresse du serveur SAP : 192.168.1.7
• Utilisateur SAP: DDIC
• Mot de passe utilisateur SAP: aura
• Nom de la BAPI: BAPI_FLBOOKING_GETLIST
• Table résultat utilisée pour exporter vers Excel: BOOKING_LIST
• Paramètre de la BAPI utilisé: MAX_ROWS=7
La commande LNCPRTDOC
est utilisée pour générer le document Word suivant :
C:\temp\result.docx
Le modèle utilisé pour le
publipostage est le suivant :
C:\temp\template.docx
String template = "C:\\temp\\template.docx";
String destination = "C:\\temp\\result.docx";
// Création d’une liste pour les paramètres de la
BAPI
Map<String,String> hm = new HashMap<String,String>();
// On met les paramètres dans la liste
hm.put("MAX_ROWS", "70");
DataSource myDataSource = new DataSource();
myDataSource.setType("sapbapi");
myDataSource.setUser("DDIC");
myDataSource.setPassword("aura");
myDataSource.setAshostSAP("192.168.1.7");
myDataSource.setClientSAP("001");
myDataSource.setLangSAP("");
myDataSource.setSysnrSAP("00");
myDataSource.setGwhostSAP("192.168.1.7");
myDataSource.setGwservSAP("3300");
myDataSource.setBAPIName("BAPI_FLBOOKING_GETLIST");
myDataSource.setBAPIResultTable("BOOKING_LIST");
myDataSource.setParameterMap(hm);
LNCPRTDOC myLNCPRTDOC = new LNCPRTDOC();
myLNCPRTDOC.setDoc(template);
myLNCPRTDOC.setSavFmt("*NORMAL");
myLNCPRTDOC.setShowDoc("false");
myLNCPRTDOC.setMrgType("*FILE");
myLNCPRTDOC.setOutSave("true");
myLNCPRTDOC.setSavDoc(destination);
myLNCPRTDOC.setMrgSel("*LTR");
myLNCPRTDOC.setExecMrg("true");
myLNCPRTDOC.setEndOpt("*NONE");
myLNCPRTDOC.setHeaderSrc("*FILE");
myLNCPRTDOC.setSourceData(myDataSource);
myLNCPRTDOC.setLNCSrvAddr("192.168.1.9");
myLNCPRTDOC.execute();