How To Use BPC Data Manager To Import Master Data & Transaction Data From 3rd Party Systems Via SAP BusinessObjects Data Integrator
How To Use BPC Data Manager To Import Master Data & Transaction Data From 3rd Party Systems Via SAP BusinessObjects Data Integrator
How To
Use BPC Data Manager
to Import Master Data &
Transaction Data from
3
rd
Party Systems via
SAP BusinessObjects
Data Integrator
SAP Product Name: SAP BusinessObjects Planning and Consolidation,
version for NetWeaver
Applicable Product Versions: 7.0
Last Updated: 10/2009
Enterprise Performance
Management
www.sdn.sap.com/irj/sdn/bpx-epm
Copyright 2009 SAP AG. All rights reserved.
No part of this publication may be reproduced or
transmitted in any form or for any purpose without the
express permission of SAP AG. The information
contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its
distributors contain proprietary software components of
other software vendors.
Microsoft, Windows, Outlook,
and PowerPoint
are
registered trademarks of Microsoft Corporation.
IBM, DB2, DB2 Universal Database, OS/2, Parallel
Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400,
iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent
Miner, WebSphere, Netfinity, Tivoli, and Informix are
trademarks or registered trademarks of IBM Corporation
in the United States and/or other countries.
Oracle is a registered trademark of Oracle Corporation.
UNIX, X/Open, OSF/1, and Motif are registered
trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame,
WinFrame, VideoFrame, and MultiWin
are trademarks
or registered trademarks of Citrix Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or
registered trademarks of W3C
1 Scenario
ThisguidewillshowhowtointegrateBOBJDataIntegratorwithBPCNW7.0.Theintended
purposeistoallowbusinessuserswhoarefamiliarwithusingBPCDataManagertoexecuteSAP
BusinessObjectsDataServicesjobsthroughtheBPCDataManagerUserInterface.This
providesBPCusersthesameuserexperienceandfamiliarityofworkingwithBPCthattheyare
usedto,butopensupBPCNWtodirectintegrationwith3
rd
partysolutionswithoutgoing
throughflatfileinterfaces.ThescenariosalsoallowBPCuserstocontinuetouseBPC
transformationandconversionfilestodomappingandtransformationsontopofthe3
rd
party
sources.
SomeofthepossiblescenariosaretousetheSAPBusinessObjectsDataServicesproductto
loaddatafromanynumberofdatabasesintoBPCNW.
Therearetwoscenariosoutlinedinthisguide:
1. LoadMasterDatafromaflatfile
2. LoadTransactionDatafromaflatfile
WhilethesepackagesnativelyexistinBPCtoday,thisguideusedthesetwoexamplesforsakeof
simplicity.Usingthetechniquesoutlinedwithinthisguide,itwouldbepossibleforcustomersto
LoadMasterDataorTransactionDatafromany3
rd
partysystemsupportedbySAP
BusinessObjectsDataServicesdirectlyintoBPCNW,whilecontinuingtousetheBPCData
Manageruserinterfaceandtransformationandconversionfiles.
Note:ItisalsopossibletoallowtheuserswhoarefamiliarwithBOBJDataIntegratortodo
transformationandconversionofdatawithinDataIntegratorPackages.Thedecisionofwhether
todotransformationandconversionconfigurationwithinDataServicesorBPCisdependenton
whatthecustomerprefers.
2 BackgroundInformation
Forcustomersunawareofhowdataserviceswork,hereissomebackgroundinformation.Data
Servicesallowconfigurationofmovingandtransformingdatafromasourcedatabasetabletoa
targetdatabasetable.WhenworkingwithNW,DataServicesdoesnotconnecttotheNW
ApplicationServer.InsteaditconnectstothedatabasedirectlyundertheNWApplicationServer
inordertomoveandcopydata.Thisprovidesveryfasthandlingoflargedatavolumes.
WithinBPC,theDataManagerpackageisexecutingaDataServicesJobwhichextractsdatafrom
thesourcespecificintheDataServicesJobandpushesthedataintotheBPCFileService.BPC
FileServicehastwospecifictypesoffiles:
1. Abinaryfile
2. Tablestorage
DataManagerwithinBPCusesthetablestoragemechanism.Therefore,thewaythissolution
worksistheDataServiceswillspecifyadatabasetableasatarget.Duringdesigntime,a
templatetablenameisused.Atruntime,adynamicallycreateddatabasetablenamewillbe
passedtotheDataServicesjobviaasubstitutionparameter,andthisnewdatabasetablename
willbeusedasthetarget.Oncethedataisinthistable,theDataManagerpackagecanread
fromthisandcontinueimportingthedataintoaBPCDimensionorBPCApplicationusingBPC
transformationandconversionfiles.
3 Prerequisites
Thisguiderequiresthefollowingprerequisites
ClientDesktopPrerequisites:
BPCExcelClient
BPCAdminClient
SAPBusinessObjectsDataServicesDesigner12.2.1orabove
ServerSidePrerequisites
SAPBusinessObjectsDataServicesServer12.2.1orabove
SAPBusinessObjectsPlanningandConsolidations7.0,versionforNetWeaver
4 KnownLimitations
ThedynamictablenameparameterizationintroducedinDesigner12.2.1isonlysupportedfor
thefollowingdatabases:
SQL
DB2
Oracle
5 TheStepByStepSolution
5.1 ImportABAPConfigurationintoyourlandscape
ThisHowToguidecontainstransportrequestfiles,K900893.PMRandR900893.PMR.This
transportrequestcontainsalltheNetWeaverobjectsthatarerequiredtocompletethisHowTo
Guide,includingcustomclasses,customprocesstypes,customprocesschains,anddefault
packageinstructions.
Classes
ZCL_UJD_BPC_RUN_DI_JOB ProcessTypeClassforRunningDIJob
ZCL_UJD_RUN_DI_JOB FunctionalClassforRunningDIJob
ZCL_SBOBJ_DI_API DataIntegratorAPIClass
ProcessTypes
ZBPCRDIJOB ProcessTypeforRunDIJob
ProcessChains
ZBPC_IMP_MDATA_DI ImportMasterDatafromDI
ZBPC_IMP_TDATA_DI ImportTransactionDatafromDI
SupportingPrograms
ZSBOBJDI_API_TEST DataIntegratorAPITestProgram
DatabaseTable
ZUJD_DM_TMPL DataManagerTableTemplate
Astheprocessofimportingatransportrequestisnotcoveredhere,itissuggestedthatyouseek
assistancefromyourNetWeaverBasisAdministratorinordertohavethistransportrequest
importedintoyoursystem.
Note:Theseobjectsmustbeimportedintoyoursystembeforecontinuinganyfurther.
5.2 ConfigureDataServicesDesigner
TheDataServicesdesignernowallowstheusertouseasubstitutionparameterwhendefining
thetargetdatabasetable.YoumustfirstconfiguretheDesignerinordertoexposethisnew
feature.ThisfeaturewasintroducedinDataServicesDesigner12.2.1
1. GototheDSConfig.txtfilefoundinthe
C:\ProgramFiles\Business
Objects\BusinessObjectsData
Services\bindirectoryandopenit.
2. Findtheparametercalled
Enable_Table_Parameterizationand
changethevaluetoYES.Savethe
file.
5.3 CreatetheDataManagerPackagefromtheBPCExcelClient
Oncethetransportisimportedintoyoursystem,wewillcreatetheDataManagerPackages
fromtheBPCExcelClient.Wewillcovertwodifferentscenarioshere.
ThefirstiscreatingaDataManagerpackagetoimportMasterDatafromaflatfileintoBPC.The
secondscenarioiscreatingaDataManagerpackagetoimportTransactionalDatafromaflatfile
intoBPC.
1. LaunchtheBPCExcelClientandlogon
totheApShellAppsetoracopyofthe
ApShellappset.Inthisexample,we
willbeusinganAppsetcalled
APSHELL_HTG.UsethePLANNING
application.Fromtheactionpane,click
ManageData.
2. Next,clickMaintaindata
management
3. Next,clickManagepackages(organize
list).
4. Inthisdialog,wecancreatethe
packages.SelecttheData
Managementpackagegroup,andclick
the icon,tocreateanewpackage.
5. Clickthe iconnexttotheinput
fieldforProcessChain.
6. SelecttheBPC:Planningand
Consolidation:Systemgrouponthe
left,andthenselectthe
ZBPC_IMP_MDATA_DIprocesschainon
theright.FinallyclicktheSelect
button.
Note:Ifloadingtransactiondata,
choosetheZBPC_IMP_TDATA_DI
processchain.
7. Continuecreatingthepackage,and
enterthepackagenameas
ImportMasterDataFromDI,andthe
descriptionasImportMasterData
fromDI.Alsocheckbothcheckboxes
underTaskType.FinallyclicktheAdd
button.
Note:Ifloadingtransactiondata,enter
thepackagenameas
ImportTransactionDataFromDI,as
wellasanappropriatedescription.
8. NowclicktheSavebutton.A
messagewillappearstatingthatthe
packagehasbeensavedsuccessfully,
andthedialogwillclose.
9. Fromtheactionpane,onceagainclick
theManagepackages(organizelist)
linktogobackintothepackage
maintenancescreen.
10. SelecttheImportMasterDataFromDI
packageandrightclickonit.Choose
ModifyPackage.
11. Inthefollowingdialog,clickthe
icontoviewthepackage.
12. TheDataManagerPackageand
DynamicScriptEditorwillthenbe
launched.Hereyoucanconfigurehow
thedialogscreenforthispackagewill
lookandbehave.ClicktheAdvanced
buttonatthetoptolaunchtheeditor.
13. Thedefaultinstructionswereinstalled
withthetransportrequest.Youmay
modifytopromptforadditionalDIjob
parametersifrequired.Refertothe
Appendix6.1formoreinformation.
ClickOkifthescripthasbeen
modified,otherwiseclickCancel.
14. Controlisthenpassedbacktothe
previousdialog,clicktheSavebutton.
15. Controlisthenpassedbacktothe
previousdialog,clicktheSavebutton.
16. Finally,atthelastdialog,clickSave
onelasttime.Youwillreceivea
messagesayingthatthepackagehas
beensavedsuccessfully.
5.4 CreatetheDataIntegratorBatchJob
Inthisstep,wewillcreateajobusingtheDataServicesDesigner.Forthisexample,theDIjob
willimportaflat.txtfile,andreformatitintotherequiredstructure.Thenfinallythejobwill
writetheformatteddatatothetableintheunderlyingdatabaseoftheNetWeaversystem
directly.Followingthis,thedatawillbeimportedeitherintotheBPCDimensionasmasterdata
orintoaBPCApplicationastransactiondata.
1. LogontotheDataServicesserverusing
theDataServicesDesigner.Checkwith
theAdministratorforlogon
information.
2. ClickontheDataStorestab.
3. Rightclickinthewhitespaceofthis
window,andchooseNew.
4. Inthefollowingdialog,enterthe
connectioninformationforthe
underlyingdatabaseoftheBPC
NetWeaversystem.Inthisexample,we
aredealingwithaSQLDatabase.Then
clickApplyandOK.
Note:Rememberwearewritingdata
directlytotheunderlyingdatabase,and
notgoingthroughtheNWapplication
layer.
5. TheDatastoreisnowcreated.
6. Inthisexample,wewillattempttoload
masterdatafortheEntitydimension.
Thedatawillcomefromthesupplied
Entity.csvfile.
Note:Ifyouareloadingtransaction
data,usethePlanning.csvfilesupplied
withthishowtoguide.
7. Youmustcopythedatafiletothe
c:\tempdirectoryontheserverin
whichtheDataServicesserverwas
installed.
Note:Again,usethePlanning.csvfileif
loadingtransactiondata.
8. Next,clickontheFormatstab.
9. RightclickonFlatFiles,andchoose
New.
10. Inthefollowingdialogbox,enterthe
nameoftheformatasEntity.Change
thelocationtoJobServer.Change
therootdirectorytoC:\tempandenter
thefilenameasEntity.csvandpress
Enter.
Note:Ifyouareloadingtransaction
data,thenusethePlanning.csvfile,and
namethefileformatasPlanning.
11. Simply,clickYes.
12. Therightsideofthedialogboxwillthen
bepopulatedwithdata.
13. Finally,clickSave&Close.
14. Theformatisnowcreated.
15. Next,clickontheDataFlowstab.
16. RightclickonDataFlowsandchoose
New.
17. Next,changethenameofthenew
DataFlowtoEntityMasterData.
Note:Ifloadingtransactiondata,name
itasPlanningTransactionData.
18. DoubleclickonthenewlycreatedData
Flow.Thecanvasontherightshouldbe
empty.
19. GobacktotheFormatstab.
20. Drag/droptheEntityformatintothe
whiteareaontheright.
Note:Ifloadingtransactiondata,
drag/dropthePlanningformat.
21. Whendroppingintothewhiteareaon
theright,chooseMakeSourceinthe
contextmenu.
22. TheDataFlowlayoutshouldlook
similartothis.
23. Next,clickontheQueryTransform
iconontherightsideofthedesigner
window.Nowsimplyclickinthewhite
spaceareaoftheDataFlowlayout.
24. AnewQueryiconwillshowinthe
layout,changethenameofthisto
somethingmeaningful,like
EntityTransformation.
Note:Ifyouareloadingtransaction
date,thennameitas
PlanningTransformation.
25. TheDataFlowshouldnowlook
similartothis.
26. Connectthesourcefilewiththequery
transformation.Simplydrawaline
betweenthetwousingthemouse.
27. GobacktotheDatastoretab.
28. ExpandtheBPCNWdatastore,and
rightclickontheTablesnode,and
chooseImportByName.
29. Enterthenameofthetransparenttable
fortheDataManagerfile.Usethe
templatetableZUJD_DM_TMPL.The
designerneedsavalidtableinorderto
getthestructureofthetarget.Wewill
thenuseasubstitutionparameterto
passthetablenameatruntime.The
Ownervaluewillprobablyalwaysbe
theSYSIDoftheNetWeaversystem.
Thisvalueiscasesensitive.
30. Thetablehasnowbeendefinedinthe
datastore.
31. Draganddroptheimportedtableinto
theDataFlowlayoutontheright.
32. WhendroppingintotheDataFlow
layout,chooseMakeTargetfromthe
contextmenu.
33. TheDataFlowshouldnowlooksimilar
tothis.
34. ConnecttheEntityTransformation
withthetargetbysimplydrawingaline
betweenthetwo.
Note:Ifloadingtransactiondata,
connectthePlanningTransformation
withthetarget.
35. InordertopassparameterstotheData
Flow,theparametersfirstneedtobe
defined.Inthisexample,wewill
demonstratetheprocedureforpassing
parametersbypassingtheclientfield.
ThetransparenttableinNetWeaver
containsaclientfieldcalledMANDT.
Weneedtofillthisfieldwiththe
correctclientfortheBPCNWsystem.
Wecouldofcoursehardcodethevalue
hereinthedefinition,butforthis
example,wewillpassitusingglobaljob
parameters.ChooseTools,Variables.
36. RightclickonParametersandchoose
Insert.
37. Now,doubleclickonthenewlycreated
parameter.
38. Enterthenameoftheparameteras
$MANDT,selectthedatatype,
parametertype,andenteralengthas
3.ThenclickOk.
39. Thenewparameterisnowcreated.
Laterwewillusethisparametertofill
theMANDTfieldinthetargetstructure
oftheDataFlow.
40. ReturntotheDataFlowlayout.
41. Doubleclickonthe
EntityTransformationobject.
Note:Ifloadingtransactiondata,
doubleclickonthe
PlanningTranformationobject.
42. Youshouldnowseeascreensimilarto
this.
43. DoubleclickonMANDTintherightside
ofthisscreen.
44. Inthemappingbox,enter$MANDT.
ThenclickOk.Herewearesimply
mappingtheMANDTfieldinthetarget
structuretotheDataFlowparameter
$MANDT.Laterwewillmap$MANDTto
theglobalvariable$GV_MANDTwhich
willhaveitsvaluepassedfromtheBPC
Package.
45. Now,singleclickontheROWINDEX
fieldontherightsideofthescreen.
46. Enterthescriptasyouseehere.Since
theROWINDEXinthetable,isa
characterfieldwithalengthof10,we
havetodosomeformattingwhen
generatingthenewrowindex.Youmay
copyandpastethisfromAppendix6.2.
47. Next,clickontheROWDATAfieldinthe
rightsideofthescreen.
48. Atthebottomofthescreen,enterthe
followingcoding.Thiscoding
concatenatesthefieldsfromthesource
intotheROWDATAfieldinthetarget,
separatedbyacomma.The||refersto
theconcatenatefunction.Copyand
pastethecodingfromtheAppendix6.3.
49. ReturntotheDataFlowlayout,and
doubleclickontheTargetTable.
50. ClicktheOptionstabatthebottom,
andchecktheDeletedatafromtable
beforeloadingcheckbox.
51. Inordertopasstheactualtablename
tothebatchjobdynamicallyatruntime,
weneedtouseasubstitution
parameter.Createasubstitution
parameterbychoosingTools,
SubstitutionParameterConfigurations.
52. Inthisdialog,scrolltothebottomand
enteranewparametercalled,
$$DMTABNAME,thenclickOk.
53. Next,returntotheOptionstab.Inthe
dynamictablenamevariablefield,
enterthenameofthesubstitution
parameteras[$$DMTABNAME].
54. FromtheLocalObjectLibrary,clickon
theJobstab.
55. RightclickonBatchJobsandchoose
Newfromthecontextmenu.
56. Renamethejobnameas
EntityMDataLoadandhitenter.
Note:Ifloadingtransactiondata,then
nameitasPlanningTDataLoad.
57. Next,doubleclickonthenewlycreated
job.
58. ClickontheDataFlowtabanddrag
anddroptheEntityMasterDatadata
flowintotherightsideoftheJob
screen.
Note:Ifloadingtransactiondata,drag
anddropthe
PlanningTransactionDatadataflow
intotherightside.
59. Youshouldnowseethedataflowinthe
layoutofthejob.
60. Fromthemenu,chooseTools,
Variables.
61. Now,weareinthecontextofthebatch
job.HerewewillcreateaGlobal
Variablefortheclient.Rightclickon
GlobalVariablesandchooseInsert.
62. Nowdoubleclickonthenewlycreated
globalvariable.
63. Renametheglobalparameteras
$GV_MANDT,choosethedatatype,
andsetthelength.Again,itmaymake
sensetohardcodethevaluehere,but
forthisexample,wewantto
demonstratehowtopassthevalue
fromthepackage,sowewillleaveit
blankfornow.ClickOk.
64. Next,clickontheCallstab,and
doubleclickonthe$MANDT
parameter.
65. Nowenterthevalueforthisparameter
astheglobalvariable$GV_MANDT.
ClickOk.
66. GobacktotheJobstab.
67. Next,exposethejobasawebservice.
RightclickontheEntityMDataLoad
job.ChooseProperties.
Note:Ifloadingtransactiondata,right
clickonthePlanningTDataLoadjob.
68. ClickontheAttributesTab,thenclick
onWeb_Service_Enabled.Inthe
Valuebox,enterYES.Finally,click
Apply,andOk.
69. Next,clicktheSaveAllbuttoninthe
maintoolbar.
70. Next,chooseValidation,AllObjectsin
View.
71. Youshouldhavenoerrors.Youmayget
awarningaroundtheconversionofthe
generatedrownumber.Itcanbe
ignored.
72. Finally,setupsecurityforthenewjobas
awebservice.GototheDataServices
ManagementConsole.Launcha
browserandenter
http://<hostname>:28080/DataServices
/launch/logon.doastheURL.Enterthe
administratorcredentials,andclick
Login.
Note:Checkwiththeadministratorfor
logoninformation.
73. ClickontheAdministratorLink.
74. Next,clickontheWebServiceslink
ontheleft.
75. ClickontheWebServices
ConfigurationTab.
76. Clickthecheckboxnexttothe
EntityMDataLoadjob.
Note:Ifloadingtransactiondata,click
thecheckboxnexttothe
PlanningTDataLoadjob.
77. Atthebottomofthescreen,choose
EnableSessionSecurityfromthe
listbox,andclicktheApplybutton.
78. ThejobwillthenbesetforSession
Security,whichmeanswhentheweb
serviceiscalled,auseridandpassword
willberequired.
5.5 SetupDataIntegratorLogonCredentialsasWebAdminParameters
Now,wehaveafewoptions.WecaneitherpromptfortheusernameandpasswordintheBPC
DataManagerpackage,orwecansettheseaswebadminparameters.Ifyourcompanyis
allowingbusinesspoweruserstocreateDataIntegratorjobs,thenitwouldberecommendedto
promptforusernameandpasswordforconnectingtoDataIntegratorintheBPCDataManager
prompts.However,ifyourDataServicesjobsaretypicallysetupbyIT,thentheBPC
Administratorcanjustspecifyaserviceuseridandpasswordasawebadminparameterthatcan
beusedforconnectiontoDataServices.Inthisexample,wewillsetthewebadminparameter
withtheconnectioninformation.
1. LogontotheBPCWebAdministration.
FromtheBPCExcelClient,expandthe
AvailableInterfacessectionofthe
actionpane.ClickonBPC
Administration.
2. FromtheactionpaneinsidetheBPC
Administrationwindow,clicktheline
forSetAppSetParameters.
3. Scrolltothebottomofthepage,sothat
youcanseetheemptyrowinwhich
youcanaddnewparameters.
4. IntheKeyIDfield,enterDI_USER_ID
asshown.Alsoentertheuseridforthe
DIserverintheValuefield.Clickthe
Updatebuttonatthetopofthepage.
5. Repeatstep4fortwoother
parameters,onecalledDI_PASSWORD,
andtheothercalledDI_SERVER_HOST.
Supplythevaluesfortheseparameters
andclicktheUpdatebuttonatthe
topofthepage.
Note:TheRunDIJobprocesstype
willattempttogetthesevaluesfrom
thepackagepromptsfirst,butifthey
arenotspecifiedthere,itwilllookfor
thevaluesaswebadminparameters
here.
5.6 RunningtheDataManagerPackage
RunningthedatamanagerpackagesistypicallythetaskofaBPCPowerUserorEndUser.
1. LogontotheBPCExcelClient.Fromthe
actionpane,clickManageData.
2. Next,clickRunadatamanagement
package.
3. Choosepackage
ImportMasterDataFromDI,andclick
theRunbutton.
Note:Ifloadingtransactiondata,
choosepackage
ImportTransactionDataFromDI.
4. EnterthenameoftheDataIntegrator
job,inthiscaseitisEntityMDataLoad.
Enteranyparameters,forexample,
hereweneedtosupplytheclientin
whichBPCisinstalled.
Note:Theseparametervaluescanbe
hardcodedandnotpromptedtothe
userifneeded.Thisisjusttoshowcase
buildingtheDataServiceJobs
generically.
Ifloadingtransactiondata,enter
PlanningTDataLoadastheDIjob
name.
5. SupplytheimportfilewhichtheDIjob
willwriteto.Thefilewillalsobeused
bythedownstreamprocessesinthe
chain,suchastheconvertandload
processes.Clickthefoldericonnextto
thefield.
6. Inthefollowingdialog,clickonthe
DataFilesfolder,andsupplythefile
nameasEntityDataFile.csvorsome
meaningfulname.Thenclickthe
Openbutton.Thisfilewillbecreated
intheBPCfileserviceatruntimeand
usedasastagingareaforthedatafrom
DataServices.Thisfileservicefilecan
thenbereadbythedownstream
processtypesinthechain.
7. Next,specifythetransformationfile
andclickNext.
8. Choosethecorrectdimensionfromthe
listbox,andclickFinish.
Note:Ifloadingtransactiondata,there
willbenopromptforthedimension,
buttherewillbeotherprompts.
9. Youcanthencheckthestatusby
selectingthepackageandchoosingthe
ViewStatusbutton.
10. Selectthepackagerun,andclickonthe
Detailbutton.
11. Thelogisthendisplayed.Noticethat
any/allwarningorerrormessagesfrom
DataIntegratorwillbeshowninthelog.
Note:Thewarningmessageshown
hereisnotanerror,andisexpectedin
allscenarios.
5.7 ChecktheMasterData
1. LogontotheBPCAdminClient.From
theleftsideofthescreen,expendthe
AppSetnode.Thenexpandthe
DimensionLibrarynode.Finallyclick
ontheEntitynode.
2. Fromtheactionpane,clickMaintain
dimensionmembers.Themembers
willthenbeshowninthecenterpanel
ofthescreen.
3. Youshouldseethenewlycreated
recordsfromtheEntity.csvfile.
6 Appendix
6.1 DataManagerDynamicScript
ThefollowingisthedefaultinstructionscodeusedfortheZBPC_IMP_TDATA_DIpackage.ADI
jobparameter,calledGV_MANDT,hasbeendefinedasaprompt.Theendusermayfillinthis
value.ThenamesoftheDIparametersmustmatchexactlywithwhathasbeendefinedintheDI
batchjob(without$).NoticetheTASKwhichcontainstheDI_JOB_PARAM.IfyouaddanyDIjob
parametersasPROMPTs,thenyoumustalsoaddthatfieldtothattaskaswell.
PROMPT(TEXT,%DI_JOB%,"PleaseEnterDIBatchJobName",)
PROMPT(TEXT,%GV_MANDT%,"DIJobParameter-GV_MANDT",)
PROMPT(INFILES,,"Importfile:",)
PROMPT(TRANSFORMATION,%TRANSFORMATION%,"Transformationfile:",,,Import.xls)
PROMPT(DIMENSIONNAME,%DIMNAME%,"Dimensionname:",,,%DIMS%)
INFO(%TEMPNO1%,%INCREASENO%)
INFO(%TEMPNO2%,%INCREASENO%)
INFO(%EQU%,=)
INFO(%TAB%,;)
TASK(ZBPC_IMP_MDATA_DI,SAPPSET,%APPSET%)
TASK(ZBPC_IMP_MDATA_DI,DI_JOB,%DI_JOB%)
TASK(ZBPC_IMP_MDATA_DI,DI_JOB_PARAM,GV_MANDT%EQU%%GV_MANDT%)
TASK(ZBPC_IMP_MDATA_DI,FILE,%FILE%)
TASK(/CPMB/MASTER_CONVERT,OUTPUTNO,%TEMPNO1%)
TASK(/CPMB/MASTER_CONVERT,FORMULA_FILE_NO,%TEMPNO2%)
TASK(/CPMB/MASTER_CONVERT,TRANSFORMATIONFILEPATH,%TRANSFORMATION%)
TASK(/CPMB/MASTER_CONVERT,SUSER,%USER%)
TASK(/CPMB/MASTER_CONVERT,SAPPSET,%APPSET%)
TASK(/CPMB/MASTER_CONVERT,SAPP,%APP%)
TASK(/CPMB/MASTER_CONVERT,FILE,%FILE%)
TASK(/CPMB/MASTER_CONVERT,DIMNAME,%DIMNAME%)
TASK(/CPMB/MASTER_LOAD,INPUTNO,%TEMPNO1%)
TASK(/CPMB/MASTER_LOAD,FORMULA_FILE_NO,%TEMPNO2%)
TASK(/CPMB/MASTER_LOAD,DIMNAME,%DIMNAME%)
Note:Ifthereismorethanoneparameterforajob,thenyoucansimplypromptforitusing
thissyntax.
PROMPT(TEXT,%GV_PARAM1%,"DIJobParameter-GV_PARAM1",)
PROMPT(TEXT,%GV_PARAM2%,"DIJobParameter-GV_PARAM2",)
PROMPT(TEXT,%GV_PARAM3%,"DIJobParameter-GV_PARAM3",)
ThenfortheTASK,youcanaddthoseparameterstotheexistingDI_JOB_PARAMparameter.
TASK(ZBPC_IMP_MDATA_DI,DI_JOB_PARAM,GV_PARAM1%EQU%%GV_PARAM1%%TAB%
GV_PARAM2%EQU%%GV_PARAM2%%TAB%GV_PARAM3%EQU%%GV_PARAM3%))
NoticetheINFOlines,%EQU%refersto(=)and%TAB&refersto(,).Theresultofthe
DI_JOB_PARAMwouldhavetheformatasA=B;C=D.Thisformatmustbeusedinorderforthe
processtypetoparseitcorrectlyandcreatetherequiredXMLtopasstothejob.Alsothe
parameternames,suchasGV_PARAM1mustmatchtheglobalvariablenameintheDIjob,
withoutthe$inthebeginning.
ThefollowingisthedefaultinstructionsfortheZBPC_IMP_TDATA_DIpackage.Youcanadd
promptstothisscriptinthesamewayasabove.
PROMPT(TEXT,%DI_JOB%,"PleaseEnterDIBatchJobName",)
PROMPT(TEXT,%GV_MANDT%,"DIJobParameter-GV_MANDT",)
PROMPT(INFILES,,"Importfile:",)
PROMPT(TRANSFORMATION,%TRANSFORMATION%,"Transformationfile:",,,Import.xls)
PROMPT(RADIOBUTTON,%CLEARDATA%,"Selectthemethodforimportingthedatafromthesourcefiletothe
destinationdatabase",0,{"Mergedatavalues(Importsallrecords,leavingallremainingrecordsinthedestination
intact)","Replace&&cleardatavalues(Clearsthedatavaluesforanyexistingrecordsthatmirroreach
entity/category/timecombinationdefinedinthesource,thenimportsthesourcerecords)"},{"0","1"})
PROMPT(RADIOBUTTON,%RUNLOGIC%,"Selectwhethertorundefaultlogicforstoredvaluesafter
importing",1,{"Yes","No"},{"1","0"})
PROMPT(RADIOBUTTON,%CHECKLCK%,"Selectwhethertocheckworkstatussettingswhenimporting
data.",1,{"Yes,checkforworkstatussettingsbeforeimporting","No,donotcheckworkstatussettings"},{"1","0"})
INFO(%EQU%,=)
INFO(%TAB%,;)
INFO(%TEMPNO1%,%INCREASENO%)
INFO(%ACTNO%,%INCREASENO%)
TASK(ZBPC_IMP_TDATA_DI,SAPPSET,%APPSET%)
TASK(ZBPC_IMP_TDATA_DI,DI_JOB,%DI_JOB%)
TASK(ZBPC_IMP_TDATA_DI,DI_JOB_PARAM,GV_MANDT%EQU%%GV_MANDT%)
TASK(ZBPC_IMP_TDATA_DI,FILE,%FILE%)
TASK(/CPMB/CONVERT,OUTPUTNO,%TEMPNO1%)
TASK(/CPMB/CONVERT,ACT_FILE_NO,%ACTNO%)
TASK(/CPMB/CONVERT,TRANSFORMATIONFILEPATH,%TRANSFORMATION%)
TASK(/CPMB/CONVERT,SUSER,%USER%)
TASK(/CPMB/CONVERT,SAPPSET,%APPSET%)
TASK(/CPMB/CONVERT,SAPP,%APP%)
TASK(/CPMB/CONVERT,FILE,%FILE%)
TASK(/CPMB/CONVERT,CLEARDATA,%CLEARDATA%)
TASK(/CPMB/LOAD,INPUTNO,%TEMPNO1%)
TASK(/CPMB/LOAD,ACT_FILE_NO,%ACTNO%)
TASK(/CPMB/LOAD,RUNLOGIC,%RUNLOGIC%)
TASK(/CPMB/LOAD,CHECKLCK,%CHECKLCK%)
TASK(/CPMB/LOAD,CLEARDATA,%CLEARDATA%)
6.2 MappingCodingforEntityTransformation.ROWINDEX
Ltrim_blanks(to_char(gen_row_num(),'000000000'))
6.3 MappingCodingforEntityTransformation.ROWDATA
varchar_to_long(Entity.Field1||','||Entity.Field2||','||Entity.Field3||','||
Entity.Field4||','||Entity.Field5||','||Entity.Field6||','||
Entity.Field7||','||Entity.Field8||','||Entity.Field9)