å®éšå®€ã®äœæ¥ã«ã¯å°ãè€éãªååãä»ããããŸããã
1Cã§éçºããããœãŒã¹ã®äŸã§WebãµãŒãã¹ã䜿çšããã¯ã©ã€ã¢ã³ããµãŒããŒãã«ããã©ãããã©ãŒã ãœãªã¥ãŒã·ã§ã³éã®æ å ±äº€æã®çµç¹ïŒEnterprise 8.2ãã©ãããã©ãŒã ãšCã®.NET 4.0ãã©ãããã©ãŒã äžã®ã¯ã©ã€ã¢ã³ãïŒ
ç«ã®äžã§èå³ã®ããæ¹ãã©ããã
ä»äºã®ç®ç
WebãµãŒãã¹ãæ§ç¯ããæè¡ãWebãµãŒãã¹ã®WSDLèšè¿°ã®åœ¢æãç¿åŸããã WebãµãŒãã¹ãä»ãã転éã®å¯èœæ§ã«ã€ããŠãXMLã¹ããŒãã§ãªããžã§ã¯ããã·ãªã¢ã«åããååãåŠç¿ããŸãã
ããŒããŠã§ã¢ãšãœãããŠã§ã¢
- Microsoft Windows 7 x64
- ãã©ãããã©ãŒã 1CïŒãšã³ã¿ãŒãã©ã€ãº8.2
- ã€ã³ã¿ãŒãããæ å ±ãµãŒããŒ
- Visual Studio 10 Ultimate
çè«ç玹ä»
WebãµãŒãã¹ãã¯ãããžãŒã䜿çšããŠããŸããŸãå€ãã®äº€æãè¡ãããŠããŸãã ãã¹ãããŒã¿ããŒã¹ã«ã¯WebãµãŒãã¹æ¡åŒµæ©èœãšããŒã¿ãã³ãã©ãŒãã€ã³ã¹ããŒã«ããã ãã§ååã§ãããClintãœãªã¥ãŒã·ã§ã³ã§ã¯WebãµãŒãã¹ã«æ¥ç¶ã§ãããããããã¯äŸ¿å©ã§ãã ãã®ãã¯ãããžãŒã¯ãã«ããã©ãããã©ãŒã ã§ãããçŸæç¹ã§ã¯ãã®äœ¿çšã¯éåžžã«éèŠã§ãã
WSDLèšè¿°ã䜿çšããWebãµãŒãã¹ã®äŸã¯æ¬¡ã®ãšããã§ãã
- http://www.cbr.ru/scripts/Root.asp?Prtid=DWSæ¯æ¥ã®ããŒã¿ãåä¿¡ããããã®äžå€®éè¡ã®WebãµãŒãã¹ã
- http://api.yandex.ru/speller/doc/dg/concepts/api-overview.xml Yandex WebãµãŒãã¹ã¹ãã«ãã§ãã«ãŒã
- https://www.flightstats.com/developers/bin/view/Web+Services/WSDLãã©ã€ãã倩æ°æ å ±ãªã©ãç£èŠããããã®ãå€æ°ã®WebããŒã¹ã®çµ±èšãµãŒãã¹ã
WSDL ïŒWebãµãŒãã¹èšè¿°èšèªïŒã¯ãWebãµãŒãã¹ãèšè¿°ããŠã¢ã¯ã»ã¹ããããã®XMLããŒã¹ã®èšèªã§ãã ïŒä»æ§http://www.w3.org/TR/wsdl ïŒã
SOAP ïŒSimple Object Access ProtocolïŒã¯ãåæ£ã³ã³ãã¥ãŒãã£ã³ã°ç°å¢ã®æ§é åã¡ãã»ãŒãžã³ã°ãããã³ã«ã§ãã SOAPã¯ãXML圢åŒã®ä»»æã®ã¡ãã»ãŒãžãšãªã¢ãŒãããã·ãŒãžã£ã³ãŒã«ïŒRPCïŒã®äº€æã«äœ¿çšãããŸãã ïŒä»æ§http://www.w3.org/TR/soap/ ïŒã
XDTO ïŒXMLããŒã¿è»¢éãªããžã§ã¯ãïŒ -XMLã¹ããŒãã䜿çšããŠèšè¿°ãããããŒã¿ã®ãªããžã§ã¯ãã¢ããªã³ã°ã®ã¡ã«ããºã ïŒè©³çŽ°ã«ã€ããŠã¯ã http ïŒ //v8.1c.ru/overview/xdto.htmãåç §ïŒã
ããªããã£ãåãã·ãªã¢ã«åããããã®ã»ãšãã©ã®ã¡ãœããã¯W3ã«ãã£ãŠéçºãããåå空éã http://www.w3.org/2001/XMLSchema ãã§èª¬æãããŠããŸãã
äœæ¥ã¿ã¹ã¯
ã¿ã¹ã¯1ïŒ1CïŒEnterpriseãã©ãããã©ãŒã ãã€ã³ã¹ããŒã«ããIISãµãŒããŒã³ã³ããŒãã³ããã€ã³ã¹ããŒã«ãã1C Web ExtensionsãIISãµãŒããŒã«æ¥ç¶ããŸãã
1CïŒEnterpriseãã©ãããã©ãŒã ãã€ã³ã¹ããŒã«ããå ŽåãWebæ¡åŒµæ©èœãã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã
å³ 1. 1Cã®ã€ã³ã¹ããŒã«æã«éžæãããã³ã³ããŒãã³ã
ã ã³ã³ãããŒã«ããã«\ãã¹ãŠã®ã³ã³ãããŒã«ããã«èŠçŽ \ããã°ã©ã ãšæ©èœ ãã¡ãã¥ãŒã§ãè¿œå ã®Windowsã³ã³ããŒãã³ããã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã ãWindowsæ©èœãæå¹ãŸãã¯ç¡å¹ã«ãã ãIISã³ã³ããŒãã³ããæå®ããŸãã ããã©ã«ãã§éžæãããã³ã³ããŒãã³ãã«å ããŠãISAPIãã¯ãããžãŒã«é¢é£ããã³ã³ããŒãã³ããããã«è¿œå ããå¿ èŠããããŸãããã®ãã¯ãããžãŒã®ãããã§ã1C WebãµãŒããŒãšã¯ã¹ãã³ã·ã§ã³ã¯IIS WebãµãŒããŒãšéä¿¡ã§ããèªèšŒã¿ã€ãã¯èªèšŒã䜿çšããŠWebãµãŒãã¹ãžã®ã¢ã¯ã»ã¹ãèš±å¯ãããURLã«ãããã§ã1CããŒã¿ããŒã¹ãŠãŒã¶ãŒã ã€ã³ã¹ããŒã«åŸããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãåèµ·åããããšããå§ãããŸãã
å³ 2. IISã®ã€ã³ã¹ããŒã«æã«éžæãããã³ã³ããŒãã³ã
ã ã³ã³ãããŒã«ããã«\ãã¹ãŠã®ã³ã³ãããŒã«ããã«èŠçŽ \管çããŒã«ãã¡ãã¥ãŒã§ãã IISãããŒãžã£ãŒ ãã³ã³ãœãŒã«ãèµ·åããã ã¢ããªã±ãŒã·ã§ã³ããŒã« ãèŠçŽ ãéããã³ã³ããã¹ãã¡ãã¥ãŒã§ã DefaultAppPool ãããŒã«ãéããã 詳现èšå®... ããéžæããŸãã ãã€ã³ã¹ããŒã«ããå¿ èŠããããŸããã True ãã ããã¯ãWeb-Extension 1Cã®æäœã«å¿ èŠã§ãããªããªãã 32ãããã¢ããªã±ãŒã·ã§ã³ã§ãã ããã¯ãããã°ã«äŸ¿å©ã§ãïŒã³ã³ãã£ã®ã¥ã¬ãŒã¿ãŒããå ¬éããå Žåãããã©ã«ãã§ã DefaultAppPool ãã眮ãæããããããïŒã管ç察象ç°å¢ãªãã§ãµãŒãã¹ããšã«åå¥ã®ããŒã«ãäœæããããšããå§ãããŸãã
åãIISãããŒãžã£ãŒã³ã³ãœãŒã«ã§ã æ¢å®ã®Webãµã€ãèŠçŽ ãéžæãã èªèšŒã¢ã¯ã·ã§ã³ãéžæããŸããããã§ããªãã·ã§ã³ïŒ å¿åèªèšŒãæå¹ã«ããå¿ èŠããããŸãã
IISãµãŒããŒã§1C WebãµãŒãã¹ãå ¬éã§ããããã«ãªããŸããã ãã ãããã®ãããªã±ãŒã·ã§ã³ãå¯èœã«ããã«ã¯ã 管çè ãŠãŒã¶ãŒã«ä»£ãã£ãŠ1CïŒEnterprise Configuratorãèµ·åããå¿ èŠããããŸãã
ã¿ã¹ã¯2ïŒåçŽãª1Cæ§æãäœæããŸãã
æ§æã®éçºãéå§ããæåã®ããšã¯æ¬¡ã®ãšããã§ãã管çè ããŒã«ãäœæããå¿ èŠããããŸãïŒ æ§æéçºã®æ¹æ³è«ã«åŸã£ãŠãããã¯Full RightsãšåŒã°ããã¹ãã§ãïŒ
ããŒã¿ããŒã¹ã«ã¯ã泚æãããã¢ã€ãã ã®æ°éãšã¿ã€ããå«ããã¹ãŠã®æ³šæã«é¢ããæ å ±ãå«ãŸããŠãããšèããŠããŸãã1ã€ã®æ³šæã«ã¯ã¢ã€ãã ãšæ°éãå«ããªã¹ããããã泚æã«ã¯ç¬èªã®çªå·ãšäœææ¥ããããŸãã ãã¹ãŠã®æ³šæã«é¢ããæ å ±ã¯ãWebãµãŒãã¹ãä»ããŠéä¿¡ããå¿ èŠããããŸãã
ããã説æããã«ã¯ãããŒã¿ããŒã¹ãªããžã§ã¯ããäœæããå¿ èŠããããŸãã
å³ 3.äœæããã1Cæ§æã®ããŒã¿æ§é
è¿œå ã®è©³çŽ°ãªãã®ãã£ã¬ã¯ããªã åœåæ³ ãã ãããã©ã«ããã®è©³çŽ°ã«ã¯ãã¢ã€ãã ã®ååãšã³ãŒãã«é¢ããæ å ±ãå«ãŸããŠããŸãã
ããã¥ã¡ã³ãã ãã€ã€ãŒã®æ³šæ ããè¡šéšåã 補å ããå«ãŸãããã®åè¡ã«ã¯ãåœåæ³ïŒã¿ã€ãã DirectoryReference.Nomenclature ãã®èŠçŽ ïŒããã³æ°éïŒã¿ã€ãã æ°å€ ãã®å°æ°ç¹ä»¥äž15æ¡ã®ã æ°é ãã®èŠçŽ ãš3åŸïŒã
次ã«ã1Cããšã³ã¿ãŒãã©ã€ãºã¢ãŒãã§å®è¡ããäœæããåœåæ³ãšå¯Ÿå¿ããçªå·ã§èšå ¥ãããè€æ°ã®ããã¥ã¡ã³ããäœæã§ããŸãã
ã¿ã¹ã¯3ïŒ1C WebãµãŒãã¹ã®äœæãšå ¬éã
ã äžè¬ ãæ§æã°ã«ãŒãã§ãæåã«ã¢ã€ãã ã転éããããã«ãã XDTO-packages ãã¿ã€ãã®æ°ããèŠçŽ ãäœæããŸãã ããšãã°ãã NomenclatureXDTO ããšåŒã¶ããšãã§ããŸãã åå空éURLã¯ãWSDLä»æ§ã«åŸã£ãŠããã®ããã±ãŒãžã®ä»æ§ã®URLã¢ãã¬ã¹ãšããŠå²ãåœãŠãå¿ èŠããããŸããããšãã°ã
ã Company.com/1C/Nomenclature ã ãã®ããã±ãŒãžã§ã¯ãã Nomenclature ããªã©ã®ãªããžã§ã¯ãã¿ã€ããäœæããå¿ èŠããããŸãã詳现ã«ã¯ã Code ããšã Name ããããã察å¿ããã¿ã€ãã stringïŒhttp://www.w3.org/2001/XMLSchemaïŒ ãããããŸãã
次ã«ã顧客ã®æ³šæã«é¢ããæ å ±ãå«ã2çªç®ã®XDTOããã±ãŒãžãäœæããå¿ èŠããããŸããããã¯ãåå空éã company.com/1C/ClientOrder ãã®ã ClientOrderXDTO ããšåŒã¶ããšãã§ããŸãã ãŸããäœæããåœåããã±ãŒãžã䜿çšã§ããããã«ããããã«ãã€ã³ããŒããã£ã¬ã¯ãã£ãã company.com/1C/Nomenclature ããæ¥ç¶ããå¿ èŠããããŸãã ããã¯ãããã¥ã¡ã³ãã 顧客ã®æ³šæ ãã®è¡šéšåã«å«ãŸããã¢ã€ãã ã®è»¢éã«å¿ èŠã§ãã
次ã«ãããŒãã«ããŒãã®1è¡ãå«ããªããžã§ã¯ãã¿ã€ãã ClientOrderRow ããäœæããå¿ èŠããããŸãã ãã®ã¿ã€ãã¯ã詳现ã åœåæ³ ããšã ã«ãŠã³ã ãã®çµã¿åããã§æ§æãããŸããããããã®åœåæ³ã«ã€ããŠã¯ããªããžã§ã¯ãã®çš®é¡ãåœåæ³ïŒhttp://company.com/1C/NomenclatureïŒãã瀺ããæ°éã«ã€ããŠã¯ã doubleïŒhttpïŒ// www.w3.org/2001/XMLSchemaïŒ ã "
泚æèªäœãå«ããªããžã§ã¯ãã®ã¿ã€ãã¯ã ClientOrder ããšåŒã°ãã泚æçªå·ãäœææ¥ã泚æã®è¡šåœ¢åŒéšåã®èŠçŽ ã®é åãå«ãå¿ èŠããããŸãã ã¿ã€ãæååã®ã çªå· ããã¿ã€ãã dateTimeïŒhttp://www.w3.org/2001/XMLSchemaïŒ ãã®ã æ¥ä» ãããã³ã¿ã€ãã ClientOrderRowïŒhttp://company.com/1C/ClientOrderïŒ ãã®ã 補å ããæå°æ°ãã 0 ããæ倧æ°ãã -1 ãã§ããããšã瀺ãå¿ èŠããããŸããããã¯ããã®ãªããžã§ã¯ããé åã§ããããšã瀺ããŠããŸãã
ãã ãã泚æã®ãªã¹ããè¿ãå¿ èŠãããããããã®é åãå«ããªããžã§ã¯ãã¿ã€ããäœæããå¿ èŠããããŸãããããã£ãŠãã¿ã€ãã ClientOrder ã ïŒhttpïŒ// companyïŒã® ã ClientOrder ããšããå±æ§ã 1ã€ã ãæã€ã ArrayOfClientOrders ããšããå¥ã®èŠçŽ ãäœæããå¿ èŠããããŸã.com / 1C / ClientOrderïŒ ãã
å³4. 1Cã®XDTOããã±ãŒãžã®æ§é
ããã«é¢ããŠã転éãããå€ã®èª¬æã®äœæã¯å®äºãããšèŠãªãããšãã§ããŸãã WebãµãŒãã¹èªäœãšãã®ã¡ãœãããèšè¿°ããå¿ èŠããããŸãã
ãäžè¬ãæ§æã°ã«ãŒãã§ã¯ããªããžã§ã¯ããWebãµãŒãã¹ãäœæããå¿ èŠããããŸãã ã ãµãŒãã¹ ããšåŒã¶ããšãã§ããŸãã ããã®ä»ãã¿ãã§ãWebãµãŒãã¹ãå±ããåå空éãäŸãã°ã company.com/1C ããããã³æ°ããäœæãããããã±ãŒãžã company.com/1C/Nomenclatureãcompany.com/ãå«ãXDTOããã±ãŒãžã®ãªã¹ãããæå®ããŸã1C / ClientOrder ãã ãæäœãã¿ãã§ãã GetClientOrders ãã¡ãœãããäœæããŸãããã®ã¡ãœããã¯ãå€ã ArrayOfClientOrdersïŒhttp://company.com/1C/ClientOrderïŒ ããè¿ããŸããåæã«ã空ã®å€ãè¿ãæ©èœãèšå®ãããMethod Nameããšããè«çŒé¡ã®ãã£ãŒã«ããã¯ãªãã¯ããŸãããããã«ããããã®WebãµãŒãã¹ã¡ãœããã«ã¢ã¯ã»ã¹ãããšãã«åŒã³åºãããWebãµãŒãã¹ã¢ãžã¥ãŒã«ã«é¢æ°ãäœæããŸãã
ããŒã¿ããŒã¹ããåãåã£ãŠé¡§å®¢æ³šæã®ãªã¹ããè¿ãé¢æ°ãæ£ããèšè¿°ããããã«ã¯ããã®é¢æ°ã®ã³ãŒãã¯ä»é²1ã«ãããããå éšèšèª1Cãç¥ãå¿ èŠããããŸãã説æãå¿ èŠãªã®ã¯ãã XDTO Factory ãã¯ã·ãªã¢ã«åãå®è¡ããäœããã®ãããŒãžã£ãŒã§ãããšããããšã§ããªããžã§ã¯ããããã³ãã®ã·ãªã¢ã«åããããªããžã§ã¯ããè¿ãå¿ èŠããããŸãã åæã«ãããŒã¿ããŒã¹ã«å«ãŸãããã¹ãŠã®æ³šæãéžæãããè¡šéšåã®çªå·ãæ¥ä»ãè¡ã®ã·ãªã¢ã«åãè¡ãããŸãããåœåæ³ã«ã¯è¿œå ã®ã·ãªã¢ã«åãå¿ èŠã§ãæ¢ã«ããã¯ããããªããžã§ã¯ããäžè¬æ§é ã«æ¿å ¥ãããŸãã ããã¯ããããªããžã§ã¯ãã®é åãã¢ã»ã³ãã«ãããé åããã±ãŒãžã«ã·ãªã¢ã«åãããŸãã åŒã³åºãããé¢æ°ã®çµæãšããŠã¯ã©ã€ã¢ã³ãã«éä¿¡ãããŸãã
WebãµãŒãã¹ãå ¬éããã«ã¯ã1C configuratorã¡ãã¥ãŒã§ã Administration \ Publish on a web server ... ããéžæããWebãµãŒãã¹ãããªã±ãŒã·ã§ã³ã®ååãããšãã°ã Company ãããµãŒãã¹ã®ååãäŸãã°ã Service ãããã³ã¢ãã¬ã¹ã service.1cws ããæå®ããŸãããŸãããããªã±ãŒã·ã§ã³ã®ãã¹ãæå®ããŸãïŒäŸïŒ " CïŒ\ inetpub \ wwwroot \ Company \ "ïŒã
ãã®åŸãWSDL WebãµãŒãã¹æ§é ã¯ã¢ãã¬ã¹ã localhost / Company / ws / service.1cwsïŒWsdl ãã§å©çšå¯èœã«ãªããŸã
ã¿ã¹ã¯4ïŒCïŒPlatform .NET 4.0ã§ã®ã¯ã©ã€ã¢ã³ãã®äœæã
Visual Studioã§ãæ°ããCïŒã³ã³ãœãŒã«ã¢ããªã±ãŒã·ã§ã³ãäœæããŸãã
次ã«ãã Reference ããããžã§ã¯ãèŠçŽ ã®ã³ã³ããã¹ãã¡ãã¥ãŒãåŒã³åºããã Add service reference ... ãã¢ã¯ã·ã§ã³ãå®è¡ããéããã¡ãã¥ãŒã®ã Advanced ... ããã¿ã³ãã¯ãªãã¯ããŸããã Add Web Reference ... ããã¿ã³ãã¯ãªãã¯ããå¿ èŠããããŠã£ã³ããŠãéããŸãã
WebãµãŒãã¹ã®WSDLèšè¿°ãžã®ãªã³ã¯ãæ¿å ¥ããå¿ èŠãããã¡ãã¥ãŒãéããŸãã
å³ 5. CïŒã§WebãµãŒãã¹ããããžã§ã¯ãã«æ¥ç¶ãã
1Cã§äœæãããWebãµãŒãã¹ã®å Žåããã®ãªã³ã¯ã¯ã localhost / Company / ws / service.1cwsïŒWsdl ãã®ããã«ãªããŸããWebãµãŒãã¹ã®èª¬æãæ£ããåãåã£ãåŸãWebãžã®ã¢ã¯ã»ã¹å ãšãªã.NETåå空éã®ååãæå®ããå¿ èŠããããŸããµãŒãã¹ãããšãã°ã CompanyService ããã åç §ã®è¿œå ... ããã¿ã³ãã¯ãªãã¯ãããšãVisual Studioã¯ãã®èª¬æã«åŸã£ãŠã¯ã©ã¹ãèªåçã«çæããŸãã ãããžã§ã¯ãã§ã¯ãçæãããã¯ã©ã¹ã®ã¡ãœãããåŒã³åºãã ãã§ååã§ãããã·ãªã¢ã«åãšåŒã³åºãã¯.NETãã©ãããã©ãŒã ã«ãã£ãŠå®è¡ãããŸãã
次ã«ãWebãµãŒãã¹ã«ã¢ã¯ã»ã¹ããåä¿¡ããããŒã¿ããŠãŒã¶ãŒã«è¡šç€ºããããã°ã©ã ãäœæããå¿ èŠããããŸãã ãããè¡ãã«ã¯ãCïŒèšèªãç¥ã£ãŠããå¿ èŠããããŸããããã°ã©ã ã³ãŒãã¯ä»é²2ã«èšèŒãããŠããŸãããã®ã³ãŒããããã ãµãŒãã¹ ããªããžã§ã¯ãã®äœæã¯ãµãŒãã¹ã¢ã¯ã»ã¹ãããŒãžã£ãŒã®äœæã«éããªãããšãæ確ã«ããå¿ èŠããããŸãã ããã«ä»£ãã£ãŠãWebãµãŒãã¹ã¡ãœãããåŒã³åºãããŸãã
ã _1CWebServiceClientConsole ãã¯ãããžã§ã¯ãã®äžè¬çãªåå空éã§ãã ãäœææã«éžæãããŸãã WSDLæ§é ããååŸããWebãµãŒãã¹ã®åå空éã¯ããããžã§ã¯ãã®åå空éã«å®å šã«å«ãŸããŠããããããç¬èªã®ããªã¢ãŒãã¡ãœãããåŒã³åºãããšãã§ããŸãã
ãã®ãããªã¢ãŒããã¯ãã£ã®æ§ç¯ã¯ããã°ã©ãã«ãšã£ãŠééçã§ããããã®åŸã®éä¿¡ã®ããã«ã©ã®ãã€ã³ãã§äœãã·ãªã¢ã«åãããŠããããç解ããå¿ èŠããããŸãã ãã®ã¯ã©ã€ã¢ã³ã/ãµãŒããŒã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£ã¯ãçŸåšæã人æ°ããããŸãã
ã©ãã¬ããŒã
ã¬ããŒãã¯å¿
èŠãããŸãããã¯ãŒã¯ã¹ã¿ã³ãã®äœæãå¿
èŠã§ããããã®äœæ¥ã®ãã¢ã³ã¹ãã¬ãŒã·ã§ã³ãå¿
èŠã§ãã
åŽåä¿è·æé
ã¯ãŒã¯ã¹ã¿ã³ãã衚瀺ããæ¥ç¶é åºãšæ§ææ©èœãããã³ãªããžã§ã¯ãã®ã·ãªã¢ã«åã®æ©èœã説æããå¿
èŠããããŸãã ä¿è·ãæåãããã«ã¯ããã¹ãŠã®è³ªåã«çããå¿
èŠããããŸãã
ãã¹ãã®è³ªåãšã¿ã¹ã¯
- 1C Webæ¡åŒµãšã¯ã©ã®ãããªããã深床ã§ããïŒ
- ããŒã¿ã®ã·ãªã¢ã«åã®ããã«ããã±ãŒãžã®æ§é ãæ ŒçŽãã1Cã¯äœã§ããïŒ
- WebãµãŒãã¹èšè¿°æ§é ãååŸããæ¹æ³ã¯ïŒ
- WebãµãŒãã¹ãVisual Studioã§éçºäžã®ãããžã§ã¯ãã«æ¥ç¶ããæ¹æ³ã¯ïŒ
- ã¯ã©ã€ã¢ã³ãã®ã³ãŒã«ãããŒãžã£ãŒãäœæããçç±ãšã¯ïŒ
ä»é²1ïŒ1Cèšèªã®GetClientOrdersé¢æ°ã³ãŒã
GetClientOrders() = XDTO.("http://company.com/1C/ClientOrder", "ArrayOfClientOrders"); = XDTO.("http://company.com/1C/ClientOrder", "ClientOrder"); = XDTO.("http://company.com/1C/ClientOrder", "ClientOrderRow"); = XDTO.("http://company.com/1C/Nomenclature", "Nomenclature"); = ; . = " | ., | ., | . | | . "; = .(); = .(); .() = 0 Null; ; = XDTO.(); .() = XDTO.(); .Number = .; .Date = .; .. // ! = XDTO.(); = XDTO.(); .Code = ..; .Name = ..; .Nomenclature = ; .Count = .; .Products.(); ; .ClientOrder.(); ; ;
ä»é²2ïŒWebãµãŒãã¹ã«ã¢ã¯ã»ã¹ããCïŒããã°ã©ã ã³ãŒã
using System; using _1CWebServiceClientConsole.CompanyService; namespace _1CWebServiceClientConsole { class Program { static void Main(string[] args) { using (Service service = new Service()) { service.SoapVersion = System.Web.Services.Protocols.SoapProtocolVersion.Soap12; service.Credentials = new System.Net.NetworkCredential("LOGIN", "PASS"); var arrayOfClientOrders = service.GetClientOrders(); if (arrayOfClientOrders == null) Console.WriteLine(" "); foreach (var clientOrder in arrayOfClientOrders) { Console.WriteLine(" â" + clientOrder.Number + " " + clientOrder.Date); Console.WriteLine("-----"); foreach (var clientOrderRow in clientOrder.Products) { Console.WriteLine(clientOrderRow.Nomenclature.Name + " " + clientOrderRow.Count); } Console.WriteLine("-----"); } } Console.ReadKey(); } } }