Мазмұны:
1. 1С конфигурациясын Soap протоколымен біріктіру
2. SOAP клиентін 1С конфигурациялау алгоритмі
3. JavaScript және HTML-ден 1С soap веб-қызметтеріне қол жеткізу
1. 1С конфигурациясын Soap протоколымен біріктіру
1С жүйесінің бағдарламалық өнімін soap хаттамасымен біріктіру бизнес-процестерді ұйымдастыруда көптеген жаңа мүмкіндіктерді қамтамасыз етуге мүмкіндік береді.
Soap (Simple Object Access Protocol) бұл XML негізіндегі интернет деректерімен алмасудың стандартты протоколы. Ол хабарламаларды бір түйіннен екіншісіне беру үшін қолданылады, атап айтқанда веб-қызметтерді пайдалану. 1С конфигурациясын Soap протоколымен біріктіру деректерді бөлісу үшін веб-қызметтерді пайдаланатын 1С және басқа бағдарламалық өнімдер арасында деректерді бөлісуге мүмкіндік береді. Бұл пайдалы болуы мүмкін, мысалы, егер сіздің компанияның CRM жүйесін немесе клиенттермен жұмыс жасайтын кез-келген басқа жүйені қолданса. 1С-ті Soap протоколымен біріктірудің басты себептерінің бірі-көптеген қосымшалар қолданатын стандартты қолдана отырып, әртүрлі қосымшалар арасында деректерді тасымалдау мүмкіндігі. Сонымен қатар Soap интеграциясы қашықтағы процедураларды шақыруға және қашықтағы 1С нысандарына қол жеткізуге мүмкіндік береді, бұл басқа қосымшалармен интеграцияда 1С мүмкіндіктерін едәуір кеңейтеді. 1С деректерді бөлісу үшін келесі форматтарды қолдайды: XML, JSON және SOAP. Soap-пен 1С-да жұмыс істеу үшін веб-қызметтерге қол жеткізу құралдарының стандартты кітапханасы қолданылады.
2. SOAP-клиентін 1С-те конфигурациялау алгоритмі
Негізгі әдіс 1С SOAP-клиентін пайдалану. Оның көмегімен қашықтағы процедураларды шақыруға және интернет арқылы 1С және басқа қоысмшалар арасында деректерді жіберуге болады. SOAP клиентін 1С-де орнату күрделі емес және бұл алгоритм:
1. Компьютерге өзара әрекеттесетін сервер бағдарламасын орнату (мысалы, CRM жүйесі немесе веб-қызметтерді пайдаланатын кез-келген басқа қолданба);
2. Сервер бағдарламасы орнатылған сервердің жұмыс істейтініне және желі арқылы қол жетімді екеніне көз жеткізіңіз;
3. 1С-да SOAP клиентін жасаңыз;
4. Қосылым параметрлерін орнатыңыз (URL, пайдаланушы, құпия сөз);
5. Soap клиентін қолдана отырып, деректермен жұмыс істеу үшін 1С-де қажетті функцияларды немесе әдістерді жасаңыз;
6. Функциялар мен әдістерді тексеріңіз.
3. JavaScript и HTML-ден 1С soap веб-қызметтеріне қол жеткізу
Әрі қарай, JavaScript көмегімен HTML беті арқылы 1С веб-қызметтеріне қол жеткізуге болатын әдіс сипатталады. Мысал ретінде анықтамалық атаулардың алғашқы әріптері бассаңыз, осы әріптен басталатын барлық анықтамалықтар шығады. Бұл әдісті HTML беті де веб-сервис те бір серверде орналастырылған жағдайда пайдалануға болады. Дәл осылай кросс-домендік ақаулар болмайды. Егер домендер сәйкес келмесе, онда браузер осындай қате мәтінін көрсетеді:
Бізде 1С жүйесі тарапынан «Execute» операциясы бар «catalogs» веб-сервисі болсын. Кіру үшін бізде «string» деректер түрі немесе «script» түрі бар опциялар болады және оларда «string» Шығыс түрі болады. Сонымен қатар, операция параметрдің ішінде болған белгілі бір сценарий кодын іске қосады және JSON-ді нәтиже айнымалысы бойынша сериялау түрінде қайтарады. Бұл төменде келтірілген:
Сонымен қатар, JSON сериялануы, егер сіз онымен JavaScript көмегімен жұмыс жасасаңыз және eval(resultText) командасының көмегімен жолды массивке немесе объектіге өзгертсеңіз, өте ыңғайлы екенін түсіну маңызды.
Веб-қызметтен жауаптың дұрыстығын оның мекен-жайын енгізгеннен кейін тексереміз, ол келесіде көрсетіледі:
192.168.1.151
HTML файлының жобасын әртүрлі браузерлерге арналған стильдер тізімі бар дайын шаблоннан бастаған дұрыс. Жоғарғы формада веб-сервер параметрлеріне жауап беретін элементтерді көрсету керек, олардың арқасында:
· wsPassword – құпия сөз;
· wsUser – кіру;
· wsUrl – веб-қызмет мекенжайы.
Логин мен пароль 1С пайдаланушымен сәйкес келуі керек. Сол жақтағы панельде қол жетімді анықтамалықтар болады-бұл catalogsList, ал оң жақта catalogRecords деректері, сондай-ақ әріптер көрсетіледі.
Soap веб-қызметіне кіруге жауапты функция келесідей:
ЕxecuteSoap-қа кірген кезде 1С-сценарий беріледі, ол 1С жүйесінің конфигурациясы жағынан орындалды, сонымен қатар өңдеуші де беріледі. Егер кенеттен қате пайда болса, онда өңдеушіге- processError-ге хабарлассыңыз, ол қате туралы хабарламаларды шығаруға жауап береді. Бұл жағдайда 1С коды HTML кодының ішінде script тегінің көмегімен жазылғанын түсіну маңызды. Кодтың кез-келген бөлігінің мәтінін көрсету үшін jQuery конструкт($("#enumerate1CCatalogs").text() дизайнын пайдалану керек.
Мысалы, каталог атаулары бар кодтың бір бөлігін алу осылай көрінеді:
Осылайша бірінші әріптерді алу көрсетіледі:
Сонымен бірінші әріп бойынша шартпен деректерді алу:
Егер сіз «Жаңарту» батырмасын бассаңыз, функция шақырылады.
Егер ол дұрыс орындалса, онда processSucces өңдегіші келесіде 1С бағдарламалық код мысалында көрсетілгендей пайда болады:
Веб-қызмет қайтарған XML-де m:return белгісінде JSON сериялануы бар.Оны JavaScript нысандарына аудару үшін eval қоңырауын пайдалану керек. Өңдеуші каталогтар тізімін тазартады және оны әр элементке catalogTitle класын қолдана отырып, каталог атрибутымен li белгілері арқылы қайта пішімдейді. Сондай-ақ, барлық басқару элементтері бірдей өңделеді. Егер сіз анықтамалықты бассаңыз, әріптер мен деректер жойылады, содан кейін қайтадан толтырылады. Егер сіз әріпті бассаңыз, деректер каталогтан толтырылады. "Тext/1c" типті сценарий блоктарындағы 1С код бөліктері өңдеуге жауап береді.
Қолданба келесідей болады:
Анықтамалықтар
Бұл мақалада Soap протоколы мен 1С жүйесінің конфигурациясы қалай өзара әрекеттесетіні қарастырылды, сонымен қатар JavaScript және HTML-ден Soap 1С веб-қызметтеріне қол жеткізудің егжей-тегжейлі әдісі айтылды.Негізінде Soap-пен 1С интеграциясы сіздің жүйеңіздің мүмкіндіктерін айтарлықтай кеңейтуге мүмкіндік беретін қуатты құрал екені белгілі болды. Soap арқылы қолданбалар арасында жіберілген хабарламалар орындалу сұраулары да, сол сұрауларға жауаптар да болуы мүмкін. Олар XML пішімін пайдаланады, бұл көптеген әртүрлі деректер түрлерін ортақ пайдалануға мүмкіндік береді.Осылайша, Soap-пен 1С интеграциясы 1С және басқа қолданбалар арасында тиімді өзара әрекеттесуді қамтамасыз етудің ыңғайлы және әмбебап әдістерінің бірі болып табылады.
«Кодерлайн» компаниясының маманы
Айдар Фархутдинов











