ãŠãŒã¶ãŒãšããŠã®SAPã§ã®æ°å¹Žéã®äœæ¥ã§ãSAPã§ã®äœæ¥ã容æã«ããããã«å€æ°ã®ç°ãªãã¹ã¯ãªãããã³ã³ãã€ã«ããŸããã SAPã®ãç®±ããåºããŠãããã¯ãé«éã§å¹ççãªäœæ¥ã«ã¯éåžžã«äžäŸ¿ã§ãã ç¹ã«é¢åãªã®ã¯ãç»é¢ã«è¡šç€ºãããŠãããããå€ãã®è¡ãããŒãã«ã«æ¿å
¥ããããšãäžåºŠã«ã§ããªãããšã§ãã ããŒãã«ãã¹ã¯ããŒã«ããŠãããŒãã«æ¿å
¥ããå¿
èŠããããŸãã äœã¯ã€ãã¹ã¯ãªãŒã³ã¢ãã¿ãŒã§ã¯ãéåžžã«äžäŸ¿ã§ãã ã©ãããããããã¹ã¯ãªãããã³ã³ãã€ã«ããåã§ãã£ãŠããã¢ãã¿ãŒãçŽç«ãããç»åãå転ãããŠããå€ãã®è¡ã衚瀺ãããããã«ããŸããã
ç§ã¯èªåã®ãã¹ããã©ã¯ãã£ã¹ãäžè¬ã«å
¬éããããšã«ããŸããã
äŒç€Ÿã§ã®ä»äºã«å¿
èŠãªãã®ã®éçºãéæããããšã¯ãå®éã«ã¯ïŒãããŠå®éã«ã¯ïŒéçŸå®çã§ãã å瀟ã¯å€§èŠæš¡ã§ãå®å䞻矩ã§ãããå€ãã®æ¿èªãåŸãŠãããSAPããã°ã©ããŒãå€ãã®ä»²ä»éšéãªã©ã®ãéãç³ãèš³ãªãæã£ãŠããŸãã ãããã£ãŠãVBScriptã䜿çšããŠïŒç§ã®äœæ¥ã ãã§ãªãïŒäœæ¥ããã£ãããšç¬ç«ããŠèªååããŸããã äŒç€Ÿã®ã³ã³ãã¥ãŒã¿ãŒã§ãå·Šå©ããexeãå®è¡ããããšã¯ãããããçš®é¡ã®ããªã·ãŒãèšå®ãããã³ãµãŒãããŒãã£ã®ããã°ã©ã ã«ãã£ãŠçŠæ¢ãããŠããŸãããVBScriptã¯éãã«èµ·åããŸãã
ã¹ã¯ãªãããã³ã³ãã€ã«ããããã®äž»ãªæ¹æ³è«ã¯ãSAPèªäœã®ããŒã«ã䜿çšããŠãã¯ãã«ã¢ã¯ã·ã§ã³ãèšé²ããèšé²ã®ãããªãåæããã«ãã®èª¿æ»ãã€ã³ã¿ãŒãããäžã®æ
å ±ã®æ€çŽ¢ãªã©ãè¡ãããšã§ããã ãªã©
ã€ã³ã¿ãŒãããäžã§ã¯ãvbs-fileãããã«ã¯ãªãã¯ããŠèµ·åãããVBScriptã䜿çšããŠSAPãæäœããå€ãã®äŸããããŸãããã»ãšãã©ãã¹ãŠãæåã®SAPãŠã£ã³ããŠã§åäœããããã«èšèšãããŠããŸãã ãã®ãããªäŸã®å
é ã«ã¯ãéåžžã session.findByIdïŒ "wnd [0]"ïŒãMaximizeãšããã³ãŒãããããSAPãŠã£ã³ããŠãå±éããŸãã ãã®ãããªã¹ã¯ãªãããæåã®ãŠã£ã³ããŠã®äžã§ãã°ã©ãŠã³ããã§æäœããããšã¯ã次ã®çç±ã§äžäŸ¿ã§ãã
- SAP LogonãŠã£ã³ããŠãéãããããã¬ã€ã«æå°åããå¿
èŠããããŸãã ãã以å€ã®å Žåãã¹ã¯ãªããã¯ãã®äžã§åäœããããšããŸãã
- æåã®ãŠã£ã³ããŠã§ãå¥ã®ãã©ã³ã¶ã¯ã·ã§ã³ãå®è¡ãããããã©ã³ã¶ã¯ã·ã§ã³ã®çµæã衚瀺ãããããã©ã³ã¶ã¯ã·ã§ã³ãéããŠãã©ã¡ãŒã¿ãå
¥åãããã§ããŸãã äžè¬ã«ãã¡ãã¥ãŒä»¥å€ã®äœããæåã®ãŠã£ã³ããŠã§éãããå Žåãã¹ã¯ãªãããä»ãããã©ã³ã¶ã¯ã·ã§ã³ã®éå§ã¯æ©èœããŸããã
- æåã®ãŠã£ã³ããŠã¯ãå¥ã®ãµãŒããŒãžã®æ¥ç¶ãéãå ŽåããããŸãã
æåã®SAPãŠã£ã³ããŠã®GUIèŠçŽ ã®ããªãŒãXMLãã¡ã€ã«ã«ã¢ã³ããŒããã远å ã®ã¹ã¯ãªãããäœæãããŸããã æ¬¡ã®ããã«ãªããŸãã

SAP GUIèŠçŽ ã®åæDim currentNode Set xmlParser = CreateObject("Msxml2.DOMDocument")
è¡ã®1ã€ãã³ã¡ã³ãã¢ãŠãããŸãã
- åæãwnd [0]ã
- åæãwnd [0] / usrã
SAPãŠã£ã³ããŠå
šäœãŸãã¯UserAreaã®ã¿ïŒã¡ãã¥ãŒãããŒã«ããŒãã¹ããŒã¿ã¹ããŒãªãïŒã®èŠçŽ ãã¯ããŒã«ããçµæãååŸããŸãã
ããã€ãã®ãã¥ã¢ã³ã¹ïŒ
- ç»é¢ã«è¡šç€ºãããªãèŠçŽ ãããå Žåããã®èŠçŽ ã¯ååšãããååã§ãIDã§ãèŠã€ããããšãã§ããŸããã ããã«å°éããã«ã¯ããã¹ãŠã®èŠªèŠçŽ ãå±éããŠè¡šç€ºããå¿
èŠããããŸãã äŸïŒ
- ãã©ã³ã¶ã¯ã·ã§ã³ME51ââNã§ã¯ãããããŒãæããããŸããŠããå ŽåããHeader Noteããæå®ããããšã¯ã§ããŸããã æåã«ããããŒãå±éããå¿
èŠããããŸãã
- ãã©ã³ã¶ã¯ã·ã§ã³ME21Nã§Our Signãã£ãŒã«ãã«ã¢ã¯ã»ã¹ããã«ã¯ãããããŒãå±éããã ãã§ãªããCommunicationã¿ãã«åãæ¿ããå¿
èŠããããŸãã
- ç»é¢ãæŽæ°ãããšãã»ãšãã©ãã¹ãŠã®GUIãªããžã§ã¯ããåäœæãããååãŸãã¯IDã§å床æ€çŽ¢ããå¿
èŠããããŸãã ç»é¢ãæŽæ°ããåã«ã¹ã¯ãªããã§äœæããããªããžã§ã¯ãã«ã¢ã¯ã»ã¹ãããšããšã©ãŒãçºçããŸãã
- SAP GUIèŠçŽ ãšå¯Ÿè©±ãããã¹ãŠã®VBScriptã³ãã³ãã¯ãåæã¢ãŒãã§å®è¡ãããŸãã SAPãã³ãã³ããå®äºãããŸã§ãVBScriptã³ãŒãã®å®è¡ã¯ãã以äžé²ã¿ãŸããã ããã¯éåžžã«äŸ¿å©ã§ããäžæåæ¢ãã«ãŒããã©ãã«ã§ãæ¿å
¥ããå¿
èŠã¯ãããŸãããç»é¢äžã®å€æŽã確èªããããã¡ãã»ãŒãžããã¯ã¹ã衚瀺ãããã®ãåŸ
ã£ããããå¿
èŠã¯ãããŸããã
- ã¹ã¯ãªãããå®è¡ããã1ã€ã®SAPãŠã£ã³ããŠïŒã¢ãŒãïŒãšå¯Ÿè©±ããŠããéãä»ã®SAPã¢ãŒããšWindowsãŸãã¯ä»ã®ã¢ããªã±ãŒã·ã§ã³ã®äž¡æ¹ã§å®å
šã«äœæ¥ã§ããŸãã
ç§ã®ã¹ã¯ãªããã¯SAPããçŽæ¥å®è¡ãããŸãã ãããè¡ãããã«ãSAPã§ã¯ãã¿ã€ããWebã¢ãã¬ã¹ãŸãã¯ãã¡ã€ã«ãã®ãªããžã§ã¯ãããæ°ã«å
¥ãã«äœæãããã¹ã¯ãªãããã¡ã€ã«ãžã®ãã«ãã¹ã瀺ããŸãã

ã¹ã¯ãªããã«ã¯ãWSFïŒWindows Script FileïŒãã¡ã€ã«ã䜿çšããŸãããã®ãã¡ã€ã«ã¯2ã€ã®éšåã§æ§æãããŠããŸãã
- åã¹ã¯ãªããã§äœ¿çšãããã³ãŒããšããã¹ãŠã®ã¹ã¯ãªããã§äœ¿çšãããªãããã€ãã®é¢æ°ãšæé ãå«ããããã°ããŒã SDK.vbsã®äžã®å
±éãã¡ã€ã«
- å®éãç§ã®ã¿ã¹ã¯ãå®è¡ããVBScriptèªäœã VBScriptã¯ãèµ·åå
ã®SAPãŠã£ã³ããŠã§ã³ãã³ããæ£ç¢ºã«å®è¡ããŸãã
WSFãã¡ã€ã«æ§é <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript"> ⊠⊠</script> </job>
ããªãã¡ WSFã¯ãããã€ãã®ã¹ã¯ãªããïŒããŸããŸãªããã°ã©ãã³ã°èšèªïŒã§æ§æã§ããäž¡æ¹ãšãå¥ã
ã®ãã¡ã€ã«ã«æ£åšããŠãããWSFèªäœã«ç»é²ãããŠããŸãã WSFãèµ·åãããšãSDK.vbsãã¡ã€ã«ã®ã³ãŒããæåã«å®è¡ãããæ¬¡ã«ã¹ã¯ãªããèªäœã®ã³ãŒããå®è¡ãããŸãã ãªããªã WSFã¯SAPããçŽæ¥å®è¡ãããŸã-WSFã¯ãèµ·åããããŠã£ã³ããŠãšãŸã£ããåããŠã£ã³ããŠã§å®è¡ãããããšãä¿èšŒãããŠããŸãã ã¢ã¯ãã£ããªã»ãã·ã§ã³ã¯Set session = application.ActiveSessionïŒïŒã³ãã³ãã§æ±ºå®ãããŸã ã
SDK.vbsã¯ãSAPæ¥ç¶ã³ãŒããšã¢ã¯ãã£ããªã»ãã·ã§ã³å®çŸ©ãããã³ããã€ãã®ãµããŒãæé ãšæ©èœã§æ§æãããŠããŸãã
ããã«ãã¹ã¯ãªããã§ã¯ã䟿å®äžãããã€ãã®ãªããžã§ã¯ããšå€æ°ãå®çŸ©ãããŠããŸãã
- Wnd0ããã³UserArea-ã»ãŒãã¹ãŠã®å Žæã§äœ¿çšããã
- ã¡ãã¥ãŒããŒãã¹ããŒã¿ã¹ããŒãããã³ãŠãŒã¶ãŒå-äžéšã®ã¹ã¯ãªããã
远å ã®æé ãšæ©èœïŒ
- ãã©ã³ã¶ã¯ã·ã§ã³éå§ã
- EnterãF3ãF5ãF8ãã¿ã³ãæŒãããšã®ãšãã¥ã¬ãŒã·ã§ã³ã
- èšé²çšã®ãã¡ã€ã«ãäœæããæ©èœãåããcsvãŸãã¯txtãã¡ã€ã«ãéãããã®ãã€ã¢ãã°ã æžã蟌ã¿çšã®ãã¡ã€ã«ã¯åããã©ã«ãã«äœæãããåãååãæã¡ãŸãããæ¡åŒµåã®åã«ãoutãã远å ãããŸãã èªã¿åãçšã®ãã¡ã€ã«ã¯ãBOMã䜿çšããUTF-8ãšã³ã³ãŒãã£ã³ã°ã«ããªãã§ãã ããã æåã®è¡ãèªã¿åããšãããã¡ã€ã«ã®å
é ã®3ãã€ãïŒ#EFBBBFïŒãããã«èªã¿åãããŸããããã«ãããèªã¿åãè¡ãSAPãã£ãŒã«ãã«æ¿å
¥ãããšãã«ãšã©ãŒãçºçããŸãã
- ããŒãã«ã®1è¡ãåããŸãïŒãã©ã³ã¶ã¯ã·ã§ã³ME51ââNã®å ŽåïŒã
- ã¯ãªããããŒããæäœããŸãã
以äžã«ãã³ã¡ã³ããšç°¡åãªèª¬æãå«ãã¹ã¯ãªããã®äŸã瀺ããŸãã
ãã©ã³ã¶ã¯ã·ã§ã³IQ09ãéå§ããã¯ãªããããŒãããã·ãªã¢ã«çªå·ã貌ãä»ããŠããã©ã³ã¶ã¯ã·ã§ã³ãå®äºããŸãã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
ããªãã¡ ã¹ã¯ãªãããå®è¡ããçŽåã«ãããšãã°Excelãããã¹ããã¡ã€ã«ãªã©ã®ã·ãªã¢ã«çªå·ããã¯ãªããããŒãã«åãã³ããŒããå¿
èŠããããŸãã
åœæã®å
¥åº«ïŒãã©ã³ã¶ã¯ã·ã§ã³MB51ïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
ã¹ã¯ãªããã®éå§æã«ãä»æã®æåãšæåŸã®æ¥ã決å®ãããŸãã ãŸããååã®ãã©ã³ã¶ã¯ã·ã§ã³éå§åŸã«å
¥åã§ããå
¥åãã£ãŒã«ããããã€ãã¯ãªã¢ãããŸãã ããŒãã«ã«ã¯ã以åã«äœæããã圢åŒïŒãŠãŒã¶ãŒåºæïŒã䜿çšãããŸããããã¯ãªã¹ãã®3çªç®ã«ãªããŸãã 圢åŒã®ã·ãªã¢ã«çªå·ã¯ãã³ãŒãã§ç°¡åã«ä¿®æ£ã§ããŸãã
å
æã®åºè·äŒç¥šïŒãã©ã³ã¶ã¯ã·ã§ã³VL06OïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
ã¹ã¯ãªããã®éå§æã«ãå
æã®æåãšæåŸã®æ¥ã決å®ãããŸãã ãã©ã³ã¶ã¯ã·ã§ã³éå§ã®æ®ãã®ãã©ã¡ãŒã¿ãŒã¯ã以åã«äœæããã圢åŒMY_FORMAT_2ã§ä¿åãããŸãã ããŒãã«ã«ã¯ã以åã«äœæããã圢åŒïŒãŠãŒã¶ãŒåºæïŒã䜿çšãããŸããããã¯ããªã¹ãã®3çªç®ã«ãªããŸãã
ã¹ã©ã€ãå¹³åäŸ¡æ ŒãååŸããŸãïŒãã©ã³ã¶ã¯ã·ã§ã³MM43ïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript"> zavod = InputBox(" ") If (zavod = "") Then WScript.Quit
å¹³åã¹ã©ã€ãäŸ¡æ ŒãååŸããå¿
èŠãããè³æã¯ããã¹ããã¡ã€ã«ã«ãããåã«ãããŸãã ã¹ã¯ãªããã¯ãã©ã³ã¶ã¯ã·ã§ã³MM43ãéå§ããã¿ãã«åãæ¿ãããã¿ã³ãæŒããŠç®çã®ãã£ãŒã«ãã«ç§»åããŸãã çµæã®äŸ¡æ Œã¯ãææãšãšãã«æ°ãããã¡ã€ã«ã«æžã蟌ãŸããŸãïŒã¿ãçµç±ïŒã
ããŒãçµäºæ¥ãå«ãåºè·ãªã¹ãïŒãã©ã³ã¶ã¯ã·ã§ã³VT16ïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
茞éã¯ãééããéžæãããŸã-çŸåšã®æã®åæ¥ãã12.31.9999ãŸã§ã çŸåšã®æã®æåã®æ¥ã®æ¥ä»ã¯ãã¹ã¯ãªããã®æåã«æ±ºå®ãããŸãã åºè·ãã€ã³ãã瀺ãããŠããŸãã çæãããã¬ããŒãã§ã¯ããªã¹ãã®æåã®åœ¢åŒãéžæãããŸãã
次ã®3ã€ã®ã¹ã¯ãªããã¯ãããŒãã®çµäºæ¥ãšåãæ¥ä»ã®åºè·æžã¿ã®é
éç©ããã¹ãããããã®ãã®ã§ãã
åºè·ãããã転èšãããªãã£ãåºè·äŒç¥šïŒãã©ã³ã¶ã¯ã·ã§ã³VL06OïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
äºåã«äœæããããã©ãŒããããããŒãã«ã«äœ¿çšãããŸãã
ãã©ã³ã¶ã¯ã·ã§ã³VT16ãéå§ããã¯ãªããããŒãããé
ä¿¡çªå·ã貌ãä»ããŠããã©ã³ã¶ã¯ã·ã§ã³ãå®äºããŸãã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
åæ§ã«ãé
éçªå·ã®åãæåã«ã¯ãªããããŒãã«ã³ããŒããå¿
èŠããããŸãã
ã¯ãªããããŒãããã®èŒžéã®ããã«åºè·ãããŸããã転èšãããŸããïŒãã©ã³ã¶ã¯ã·ã§ã³VL06OïŒã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
茞éçªå·ã®åã¯ãæåã«ãã©ã³ã¶ã¯ã·ã§ã³VT16ïŒåã®ã¹ã¯ãªããïŒã®çµæããã¯ãªããããŒãã«ã³ããŒããå¿
èŠããããŸãã ãã©ã³ã¶ã¯ã·ã§ã³ãå®äºããåŸïŒ
- ã¬ããŒãã«é
ä¿¡ããªãå Žåã察å¿ããã¡ãã»ãŒãžã衚瀺ãããã¹ã¯ãªããã¯çµäºããŸãã
- ã¬ããŒãã«é
éãããå Žåãã¡ãã¥ãŒé
ç®ãåºåº«ã®è»¢èšããéžæãããæåã®2æåïŒã€ãŸããæ¥ïŒã衚瀺ãããè»¢èšæ¥ä»ã®ãŠã£ã³ããŠã§åé€ãããŸãã æ¬¡ã«ãã¹ã¯ãªãããçµäºãããŠãŒã¶ãŒã¯åžæããæ¥ãå
¥åããŠEnterãæŒãå¿
èŠããããŸãã
ã¬ããŒãå
ã®é
ä¿¡ã®æç¡ã¯ãã¡ãã¥ãŒã®æç¡ã«ãã£ãŠæ±ºãŸããŸãã äºåæå¹åããããšã©ãŒåŠçã¹ã¯ãªããã
èšäºãæžããŠããéã«ãåºè·ãããé
éç©ã1ã€ã«æçš¿ããããã®æåã®2ã€ã®ã¹ã¯ãªãããçµã¿åãããããšã«ããŸããã
åºè·ããããå®äºããŠããªãåºè·ãžã®åºè·ã®ãªã¹ãã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
ã¹ã¯ãªããã¯ããã©ã³ã¶ã¯ã·ã§ã³VL06Oããã®é
ä¿¡çªå·ãå«ãåã®ã³ããŒã䜿çšããããŒãã«ãæåŸãŸã§äºåã¹ã¯ããŒã«ããŸãïŒãããã£ãŠããã¹ãŠã®é
ä¿¡ãã³ããŒãããŸãïŒã
çä¿¡é
ä¿¡ïŒãã©ã³ã¶ã¯ã·ã§ã³VL32NïŒã®ãPlanningTransãã®æ¥æãäžæ¬ã§åŠæ¹ããŸãã <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript"> data_prihoda = InputBox(" : 010213, 01022013, 01.02.13, 01.02.2013") If (data_prihoda = "") Then WScript.Quit vremya_prihoda = InputBox(" : 0130, 01:30") If (vremya_prihoda = "") Then WScript.Quit
. , , «», . - â Enter , .
( MB1B). <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
, ( ), , . 1000 .
( MB1B). <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript">
, , 1.
( ME51N). <job> <script language="VBScript" src="SDK.vbs"></script> <script language="VBScript"> zavod = 8888 zatreboval = 12345 mvz = "7777666666" note = " "
, . 0, . . ( ).
, , .
...