1С + PHP + JavaScript + AJAX. Основы технологий удаленного взаимодействия

Публикация № 88559

Разработка - Математика и алгоритмы

Интерес к интернет-технологиям с каждым годом становится все больше и больше. Эта тенденция не обходит стороной и такие информационные системы как 1С. Для удаленного взаимодействия (через интернет) в 1С 8 предусмотрен ряд объектов, таких как HTTP соединение и веб-сервисы. Но традиционно не все 1С-разработчики сильны в вопросе веб-технологий. А когда возникает потребность в более детальном их изучении, то многим знакома ситуация, когда не знаешь, с чего же начать. И информации в интернете вроде бы много, но как разобраться в этом разнообразии, как выделить главное?

Интерес к интернет-технологиям с каждым годом становится все больше и больше. Эта тенденция не обходит стороной и такие информационные системы как 1С. Для удаленного взаимодействия (через интернет) в 1С 8 предусмотрен ряд объектов, таких как HTTP соединение и веб-сервисы. Но традиционно не многие 1С-разработчики сильны в вопросе веб-технологий. А когда возникает потребность в более детальном их изучении, то многим знакома ситуация, когда не знаешь, с чего же начать. И информации в интернете вроде бы много, но как разобраться в этом разнообразии, как выделить главное?

В этой статье я постараюсь выделить это "главное", которое поможет сориентироваться и заложить основу для дальнейшего, более углубленного изучения современных интернет-технологий. Буквально тезисно пройдемся по основным направлениям, рассмотрим всем известные (кому-то понятные, кому-то нет) термины "PHP", "JavaScript", "AJAX" и др.

1. Интернет, сервер, браузер

С понятием интернета, думаю, знакомы все и все представляют, что это такое. Если говорить коротко, то интернет - это единая сеть, объединяющая множество компьютеров в единое информационное пространство, в котором каждый компьютер имеет свой уникальный адрес. С помощью этого адреса компьютеры находят друг друга и обмениваются информацией.

Компьютеры можно поделить на две категории: сервера и клиенты. Под сервером обыватели понимают некий центральный компьютер, стоящий в офисе и хранящий на своем жестком диске в сетевой папке рабочие файлы. Это грубое представление отчасти верное, но не полное.

Сервер - это еще и программное обеспечение, которое стоит на компьютере и которое позволяет обрабатывать запросы других компьютеров, находящихся далеко за пределами офиса, а также отвечать им. Такое взаимодействие происходит по определенным правилам, протоколам (например HTTP, самый распространенный протокол интернета, речь о котором пойдет ниже). Если вы раньше когда-либо слышали такие слова как IIS или Apache, то это как раз и есть то самое ПО сервера (как правило его называют веб-сервером), которое отвечает за обработку запросов и отправку ответов.

Клиент - это компьютер, инициирующий запрос серверу. Но не только компьютер, а также как и в случае с сервером еще и программное обеспечение. Самый яркий пример - это веб-браузер (Internet Explorer, FireFox, Chrome, Safari и др.). Давайте далее для простоты так и будем под клиентом понимать веб-браузер, хотя на самом деле это может быть любое приложение, устанавливающее соединение и взаимодействующее с сервером.

Теперь разберемся непосредственно с процессом взаимодействия клиента и сервера. Что запрашивает клиент у сервера? Для более правильной терминологии будем говорить, что клиент запрашивает ресурс. По сути любой ресурс - это файл, хранящийся на сервере, только в зависимости от типа файла ответ сервера может быть самый разный. Яркий пример простого запроса - это когда пользователь в адресной строке браузера набирает адрес ресурса и нажимает Enter (например www.yandex.ru). По этому адресу браузер отыскивает в интернете компьютер и отправляет его веб-серверу запрос на получение главного файла (имя файла писать не обязательно, обычно веб-сервер знает, какой файл по данному адресу является главным). Сервер принимает запрос, обрабатывает и отправляет браузеру обратно считанную из главного файла информацию (как правило это поток html, о котором речь пойдет ниже). Браузер принимает информацию, обрабатывает html-код и рисует в своем окне красивую страничку, которую видит пользователь.

В процессе навигации по страничке пользователь  может щелкнуть мышкой по какой-нибудь ссылке, которая указывает на другой ресурс и взаимодействие клиента и сервера повторяется, что приводит к перезагрузке и обновлению страницы новыми данными, полученными с сервера. Схематично взаимодействие клиента и сервера представлено на картинке ниже.

Схема взаимодействия веб-сервера и клиента

2. HTTP и HTML

Как уже было сказано ранее, общение клиента и сервера происходит по определенным правилам (протоколам). Самым распространенным из которых является HTTP, что означает протокол передачи гипертекста. Он описывает структуру запроса клиента и ответа сервера. Ниже на рисунке хорошо видно, из чего состоит такая структура.

Структура HTTP запроса клиента и ответа сервера

Как видим общение клиента и сервера фактически сводится к обмену самой обычной текстовой информацией, которую может прочитать человек (см. тело запроса и ответа). Первая строчка запроса - это непосредственно команда веб-серверу от браузера получить таким-то методом такой-то ресурс по такому-то протоколу. Основные методы получения ресурсов - это GET и POST. В теории GET-метод служит для чтения ресурса, а POST - для изменения данных ресурса, но технически у метода GET нет запрета на изменение. На запрос сервер отвечает браузеру кодом ответа (в нашем случае 200 означает, что ресурс найден и отдан, т.е. ОК). В заголовках содержится служебная информация. Набор заголовков определяется конкретными условиями общения клиента и сервера. В теле ответа содержится непосредственно данные, ради которых все взаимодействие и затевалось.

При общении пользователя с внешним миром через браузер тело ответа как правило содержит поток HTML-кода. HTML - это язык гипертекстовой разметки, который понимает браузер. Прочитав этот код браузер отрисует пользователю страничку на экране. Но, как можно догадаться, ничто не мешает в теле ответа передать другие данные, например xml или обычный текст. Так в принципе и поступают в ряде случаев, когда нужно организовать удаленное взаимодействие между системами, только в этом случае клиентом будет выступать не браузер, а непосредственно одна из удаленных систем.

3. PHP и MySQL

Теперь мы знаем, что ресурс - это конкретный файл, обратившись к которому по протоколу HTTP клиент получит в ответ от веб-сервера содержимое этого файла. Но с увеличением объема хранимой информации встает вопрос о правильной организации ее хранения. Очевидно, что хранить всю информацию в одном или нескольких больших файлах - не вариант. Также не вариант, когда информация разбита на множество очень мелких файлов. Вот тут сильно помогают базы данных. Одна из самых распространенных баз данных для хранения серверной информации - это MySQL. С ее помощью обеспечивается безопасное хранение, извлечение и администрирование информации.

А для того, чтобы веб-сервер мог извлекать из базы и правильно отдавать информацию клиенту существуют серверные языки программирования, ярким представителем которых является PHP. Конечно же, серверный язык может не только извлекать и отдавать - у него есть еще очень много полезных функций, но для простоты понимания будем считать именно так. Код PHP вставляется прямо в тело ресурса и когда веб-сервер читает содержимое ресурса, чтобы отдать его клиенту, этот код выполняется (извлекается информация из базы, производятся какие-то вычисления и т.п.). Результатом выполнения является динамически скомпонованный все тот же html-код, который и направляется клиенту.

4. JavaScript, AJAX и Web 2.0

Получив данные браузер отрисует их пользователю. Единожды отрисованная информация статична. Каждая новая порция информация требует обращения к серверу и перезагрузки страницы браузера. Для повышения интерактивности (выпадающие списки, плавающие формы и др.) без обращения к серверу придуман специальный клиентский язык, встроенный во все браузеры, JavaScript. Его используют для манипуляции полученными с сервера данными. В то время как PHP является серверным языком, JavaScript существует только на клиентской части. Исполняемые JavaScript конструкции называют сценариями. Они встраиваются в html-код и загружаются с ресурса на сервере, но исполняются на клиенте, т.е. после того, как данные получены и загружены браузером.

Помимо манипуляции данными JavaScript обладает такой замечательной функциональностью, как взаимодействие с сервером без перезагрузки страниц браузера. Подобная технология значительно сокращает объем передаваемых данных, ведь нет необходимости перезагружать страницу целиком - достаточно получить необходимые данные и разместить их в нужном месте страницы. Такая методика называется AJAX, что переводится как асинхронный JavaScript и XML. Слово "асинхронный" означает, что ответ сервера может приходить в фоновом режиме, т.е. послав запрос браузеру не нужно блокировать работу пользователя до получения ответа - он может продолжить работу, а когда придет ответ, браузер его увидит и обработает. На рисунке ниже схематично приведено сравнение двух моделей взаимодействия клиента с сервером: традиционной и с применением AJAX.

Сравнение двух моделей взаимодействия: традиционной и AJAX

На этой схеме видно, что в отличие от традиционной модели, в модели AJAX веб-ресурс загружается один раз, а дальше по мере необходимости подгружаются только необходимые данные, обработка и вставка в html-код страницы которых производится уже на клиенте (в браузере).

Если раньше ресурсы интернета рассматривались в основном как средство получения информации, то с развитием технологии AJAX появилась возможность интерактивного манипулирования ими, что выводит клиент-серверное взаимодействие на качественно новый уровень, понимаемый под термином Web 2.0. Ресурсы, созданные на базе технологий Web 2.0, отличает повышенная интерактивность. Фактически, такие ресурсы вполне могут заменить десктопные приложения. За примерами далеко ходить не надо. Интернет-сервис Google Docs предоставляет функциональность, схожую с основными приложениями пакета Microsoft Office с той лишь разницей, что никаких программ на компьютер устанавливать не нужно - вся работа осуществляется в окне браузера. 

Говоря о JavaScript, стоит отметить тот факт, что в нем достаточно жестко реализуется политика безопасности - так называемая Same Origin Policy, суть которой сводится к простому правилу - действие JavaScript распространяется на данные, загруженные с одного домена (адреса) при прочих равных. Таким образом, например, если сценарий, загруженный с ресурса www.site1.com попытается напрямую из клиентской части обратиться к ресурсу www.site2.com, то получит запрет. Конечно существуют методики обхода такого ограничения. Скажу больше, современные версии JavaScript позволяют делать запросы на ресурсы на других адресах, но в этом случае запрос должен содержать специфические атрибуты (заголовки), а веб-сервер должен быть специальным образом настроен на прием таких запросов. Методика такой настройки называется CORS (cross-origin resource sharing) и у нее есть своя официальная спецификация. Однако не всегда есть возможность настроить веб-сервер под свои нужды, поэтому, если вы на практике столкнетесь, например, с потребностью получить данные по технологии AJAX с другого ресурса - проксируйте такие запросы через сервер, ведь серверная часть лишена подобных ограничений. Т.е. из клиентской части отправляете AJAX запрос своему веб-серверу, тот в свою очередь с помощью того же PHP перенаправляет запрос на нужный ресурс, получает данные и возвращает клиенту.

5. RPC, SOAP и веб-сервисы

От теоретических выкладок постепенно подошли к более практическим вопросам. RPC (remote procedure call) переводится как вызов удаленных процедур. Это класс технологий, позволяющих информационным системам удаленно взаимодействовать друг с другом. Таких технологий много и протоколы передачи данных они используют разные. Остановимся на рассмотрении SOAP (simple object access protocol), как более практичной с точки зрения 1с, т.к. именно на ней базируются веб-сервисы 1с (кстати говоря не только 1с).

Способом передачи (транспортом) данных по протоколу SOAP является, как правило, старый добрый HTTP, о котором говорилось выше. В тело HTTP-сообщения помещаются данные в виде XML-текста, сформированного по определенным правилам (спецификации протокола SOAP). Тело запроса содержит XML-текст команды и параметры вызова метода в удаленной информационной системе, а тело ответа содержит XML-текст возвращаемых этим методом данных. По тем же правилам спецификации на стороне сервера или клиента XML-содержимое SOAP-сообщения интерпретируется в конкретные параметры или объекты. Возникает резонный вопрос, раз SOAP - это обмен при помощи XML, то зачем нужен именно специальным образом сформированный XML? Почему бы не передавать обычный XML с теми же данными? Все просто. При получении XML его придется разбирать (парсить) при помощи трехэтажного программного кода, так как заранее неизвестно, что это за XML и какая у него структура. Протокол же SOAP позволяет заранее определить структуру передаваемых данных а также опубликовать методы информационных систем, доступные для удаленных вызовов, что избавляет разработчиков от сложных процедур вызова методов и разбора данных.

Именно по таким принципам работают SOAP веб-сервисы. Если коротко, то их суть заключается в следующем. В удаленной информационной среде разворачивается веб-сервис, который публикуется на веб-сервере. Это означает, что у веб-сервиса появляется собственный адрес и с этого момента его можно называть ресурсом. Внутри среды между ее методом (функцией, процедурой) настраивается связь с данным веб-сервисом. Если с клиента по протоколу HTTP послать запрос на этот адрес, то веб-сервер, приняв этот запрос, транслирует его непосредственно в информационную среду, переведя входные параметры в удобный для нее формат. В информационной среде срабатывает связанный с веб-сервисом метод, отрабатывает и возвращает результат обработки обратно веб-серверу, который в свою очередь возвращает его клиенту по тому же протоколу HTTP.

6. 1С: веб-сервисы и HTTPСоединение

Итак, мы рассмотрели основы технологий, на которых базируется удаленное взаимодействие между информационными системами (файловый обмен и обмен почтовыми сообщениями принципиально не рассматривались). Какие же из них используются в 1С?

Прежде всего надо отметить, что начиная с платформы 1С 8.1 появились SOAP веб-сервисы, которые в значительной степени повысили функциональность системы. Их, наряду с веб-расширением, вполне можно рассматривать в качестве основы для создания веб-интерфейсов к 1С. В этой связи есть интересная статья "Примеры использования web сервисов 1С из браузера", в которой детально рассматривается применение технологии AJAX и веб-сервисов для построения веб-интерфейса для 1С. И пусть вас не смущает, что в платформе 8.2 появилась возможность работать с 1С из браузера и может показаться, что данная тематика неактуальна. Уверяю вас - это далеко не так. Управляемый интерфейс 8.2 очень сильно шаблонизирован и повлиять на него разработчик практически никак не может. Чтобы делать действительно красивые, функциональные и юзабилити-мощные интерфейсы придется пользоваться описанными технологиями.

Веб-сервисы также можно использовать для обмена между двумя базами. Можно обмениваться произвольными XML-сообщениями, что повышает безопасность такого взаимодействия, в отличие от применения обмена, основанного на выгрузке/загрузке файлов, когда файл по пути могут подменить. Так, например, можно осуществлять выгрузку проводок из зарплатной базы в бухгалтерскую, расходных накладных из торговой конфигурации в бухгалтерскую и т.п.

Если веб-сервисы - это надстройка к протоколу HTTP посредством протокола SOAP, то объект HTTPСоединение позволяет делать прямые запросы и получать ответ от веб-сервера напрямую по протоколу HTTP. Примером может служить выгрузка каталога товаров в интернет-магазин. При помощи HTTPСоединение отправляем POST-запрос с данными о товарах (например в виде XML, включенного в тело запроса) на известный нам адрес (это может быть определенная нами .php страничка). На стороне веб-сервера, на котором находится интернет-магазин, кодом PHP разбираем полученный XML и складываем данные о товарах в базу данных (MySQL например). Подобная техника отлично описана в статье "Передача файлов и данных на веб-сервер средствами 1С:Предприятие 8.1 методом POST" - рекомендую к прочтению.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
0. 1cspecialist 1425 15.08.11 10:09 Сейчас в теме
Интерес к интернет-технологиям с каждым годом становится все больше и больше. Эта тенденция не обходит стороной и такие информационные системы как 1С. Для удаленного взаимодействия (через интернет) в 1С 8 предусмотрен ряд объектов, таких как HTTP соединение и веб-сервисы. Но традиционно не все 1С-разработчики сильны в вопросе веб-технологий. А когда возникает потребность в более детальном их изучении, то многим знакома ситуация, когда не знаешь, с чего же начать. И информации в интернете вроде бы много, но как разобраться в этом разнообразии, как выделить главное?

Перейти к публикации

1. Alraune 1481 15.08.11 12:40 Сейчас в теме
Хорошая вроде статья, а уже за что-то минус влепили, и без объяснения
3. aximo 1625 16.08.11 14:17 Сейчас в теме
хорошая теория, я бы сказал... не более... а вот практика (годовалой давности) - http://infostart.ru/public/74481/
4. 1cspecialist 1425 17.08.11 17:51 Сейчас в теме
(3) с теории все начинается, в т.ч. и практика... в школу-то все ходили
5. 1cspecialist 1425 17.08.11 17:53 Сейчас в теме
(3) на мой взгляд вот это http://infostart.ru/public/20017/ куда более практичней
6. Ulus 275 18.08.11 08:52 Сейчас в теме
Автор молодец.
Теория хорошая. Ясно, кратко, понятно!!!
Это база. Дальше вглубь. Он это явно и сказал.
http://infostart.ru/public/20017/ - и на эту же ссылку он потом так же сослался и рекомендовал ее.
А минусы ставят это кто считает себя "сильно умными и всезнающими" и зачастую в пратике все наоборот.
7. antowski 18.08.11 12:51 Сейчас в теме
Действительно, коротко и понятно. Мне статья очень понравилась.
Парочка очепяток:
1. раздел 4. JavaScript, AJAX и Web 2.0, в начале второго абзаца:
Помимо манипУляции данными...

2. раздел 5. RPC, SOAP и веб-сервисы, первый абзац:
Остановимся на рассмотрении SOAP (siMple object access protocol)
8. 1cspecialist 1425 18.08.11 13:06 Сейчас в теме
9. awk 718 23.08.11 16:38 Сейчас в теме
Все бы было хорошо, пока не начинаешь читать откровенный бред параграфа №6. И тут даже типичность обмена xml от soap сервиса отходит на второй план.

1. С каких пор web сервисы в 1С повышали масштабируемость системы?
2. Какого черта сравнивать систему для удаленной работы людей (web формы 1С) и систему удаленного взаимодействия приложений (web сервисы)?
3. Если файлы можно подменить, то почему нельзя подменить запросы?
4. Зачем в локальной сети городить огород из веб сервера, для обмена между базами (можно осуществлять выгрузку проводок из зарплатной базы в бухгалтерскую)?
5. Кто сказал, что управляемые формы не настраиваются? Может надо просто уметь их настраивать?

Но последний абзац - это абзац полный. На кой ляд городить огород протоколов, что бы избы без гвоздей топором строить? В 1С есть и гвозди и молотки (ws-ссылки и xdto).

А так картинки прикольные.
Yakud3a; cool.vlad4; +2 Ответить
14. cool.vlad4 45 23.08.11 17:06 Сейчас в теме
(9) Да, не, последний абзац, - упоминание единственного http-шного клиента 1С - http соединение...
15. awk 718 23.08.11 18:39 Сейчас в теме
(14) Статья обо всем и ни о чем. Как вводная для программиста-новичка 1С покатит. По крайней мере он узнает много буковок и их расшифровки. Он даже сможет из статьи почерпнуть, что сервера бывают не только 1С и баз данных, но и web. А если про web сервера он слышал, то будет в курсе, что там есть загадочный серверный язык PHP. Хотя я на нем и формы далеко не web рисовал (gtk for php было интересно попробывать). Правда о конкуренте его C# или VB которые в ASP и ASPX используются почему-то не упоминается, так же как и о perl, python, с и т.д...

Ну да бог то с ними убогими - программисту 1С не предстало думать о не предметноориентированных языках программирования. Но родной 1С то зачем так эссить? Он намного более 1С нежели one ass, как о нем принято отзываться. Да он не идеален, но не так убог как написано. А прочитав статью новичек-одинэссник и так эссник по коду пока, будет костыли делать, вместо того, что бы из эссника в 1С программиста превратиться.
21. 1cspecialist 1425 24.08.11 14:26 Сейчас в теме
(9) Я вас понимаю, бредом можно назвать все, с чем не согласен.
22. awk 718 24.08.11 15:11 Сейчас в теме
(21) Бредом я называю не то с чем не согласен. А то что априори неверно. Все вопросы из 9-го поста риторические. Ответы на них предопределены:

1. Web сервисы не повышают масштабируемость приложения. Web сервисы добавляют функционал.
2. А никакого. Это разные вещи, как топор и скальпель хирурга.
3. Запросы подменить так же просто, как и файлы (если не проще).
4. Да не нужно этого делать. Для этих вещей прекрасно подходят OLE, COM или файловый обмен. Нет необходимости городить огород.
5. Web формы настроить можно, так как хочешь. Просто надо:
а. Уметь это делать
б. Не забывать, что всегда есть обходной вариант.

Про последний абзац. Web сервисы SOAP я писал еще к семерке, как клиентов, так и серверов. В восьмерке можно глянуть http://infostart.ru/public/63082/ и никаких HTTPСоединение не надо городить.
23. 1cspecialist 1425 24.08.11 16:34 Сейчас в теме
(22)
1. Да, пожалуй это единственный пункт с которым соглашусь. Нужно было другой термин применить. Исправил.
2. Ну да, разные, и что? Хочу, использую веб-формы, хочу - веб-сервисы. Все зависит от потребностей. Да я и не пытался их сравнивать. Даже не понял, с чего вы это взяли.
3. Нет, не так просто.
4. Можно использовать COM, а можно веб-сервисы и никакого огорода здесь нет, потому что сети бывают разные и не везде COM поднимете. Разработчик PHP, работающий с вами в компании, для реализации внутреннего проекта никакой COM 1с поднимать не будет - ему проще веб-сервисами общаться. Про файлы вам любой внутренний IT-аудитор скажет, что это небезопасно, более небезопасно, чем подменять запросы, хотя бы потому, что файл выгружает обычный пользователь, который на флешке может передать его куда надо, а подмена запросов и снифферство траффика - это другой уровень работы.
5. С чего вы взяли, что я говорил, что управляемые формы не настраиваются? Или вы хотите поспорить, что интерфейс, реализуемой в управляемых формах, настолько же гибок, как если бы я рисовал интерфейс с применением озвученных в статье технологий? Как вы выразились, априори, интерфейс написанный при помощи html+php+javascript во много раз гибче и функциональней управляемых веб-форм 8.2, но его сложнее реализовывать.
24. awk 718 24.08.11 20:07 Сейчас в теме
(23)
2.
Их, наряду с веб-расширением, вполне можно рассматривать в качестве основы для создания веб-интерфейсов к 1С.

Поясняю. Web интерфейс к 1С - это интерфейс доступа к ее данным через браузер. То есть связка httpd - 1C - sql(dbf), на худой конец (интерфейс к данным 1С) httpd - sql(dbf). Если рассматривать вашу схему httpd - httpd - 1C - sql(dbf), то получаем как минимум лишнее звено. Это называется уже не интерфейс к 1С - это межплатформенное взаимодействие. В вашей схеме интерфейс к 1С закончился на web сервисе. Вы конечно можете использовать что и как хотите, но сути это не меняет. Это не основа для web интерфейса - это и есть web интерфейс.

3. Я про подмену на стадии передачи, а вы? С помощью брандмауэра уровня приложений менять http запрос одно удовольствие, не верите? А зря. С помощью брандмауэра сетевого уровня - сложнее, но то же ничего сложного. При этом если файлы реплицировать через ssh протокол, то такое просто не получится. Так как ssh шифрует файл на входе и дешифрует на выходе + подпись. В лучшем случае придет битый файл. Хотя я такого за 5 лет работы ни разу не встречал.

4.
а. Безопасность смотри п.3, а если ты про https, то у 1С не все с ним в порядке, а точнее тебе нужен не самопальный сертификат, для нормальной работы. Да и наличие его не гарантирует безопасность, т.к. если у клиента сертификата нет, то шифруется только трафик от сервера к клиенту.
б. А если ты про то, что у сервака не обрезаны usb порты и не настроена безопасность, то это к квалификации админа претензии.
в. Ты общался с PHP программистами? Они SOAP на дух не переносят. Просто потому, что PHP его не кэширует и это потенциальная DoS дыра, а еще потому, что файлы с сервака читать проще и им ниабет как они туда попадут. Хотя их заставить то же можно - вот только рады они этому точно не будут.
г. Обмен с сайтом - это не web интерфейс к 1С. Это см п.1 межплатформенное взаимодействие.
5.
а. С чего взял:
Управляемый интерфейс 8.2 очень сильно шаблонизирован и повлиять на него разработчик практически никак не может.

б. А на ассемблере наиболее гибок. Если надо дать доступ к 1С удаленным пользователям, то отношение прибыль от решения / время * ресурсы для разработки при использовании управляемых форм будет не сопоставимо выше чем php+javascript. И я еще десять раз подумаю, а не использовать ли ShareApp или терминальный сервер.
Ваша связка (php+javascript) имеет право на жизнь только когда надо дать доступ неограниченному числу пользователей. Здесь у 1С возрастает показатель ресурсы для разработки, а точнее поддержки. Но эта задача не 1С. 1С - это ERP, CRM, HRM и т.п., а не CMS система (хоть она и может поддерживать обмен с ними).
theshadowco; +1 Ответить
25. 1cspecialist 1425 24.08.11 21:51 Сейчас в теме
(24) Игра словами.
Про подмену http запроса. Вы сначала доберитесь до места в сети, где будете перехватывать. Речь о том, что файловая подмена реальна на уровне пользователя, а если используется удаленное взаимодействие, то при прочих равных условиях гарантированно на клиента придут данные, заложенные разработчиком в логику системы.
Да, я общаюсь и с PHP, Perl, Python разработчиками. Никто и в страшном сне не придумал общаться с 1с по COM. Все прекрасно общаются по SOAP и это признанный стандарт. PHP прекрасно кэширует wsdl.
Да, управляемый интерфейс сильно шаблонизирован, по моему это очевидно. Настраивать формы "галочками" можно - для быстрой разработки самое то, я не спорю, но дальше галочек дело не пойдет. Все зависит от решаемых задач и реализуемых проектов. Если в команде есть грамотный верстальщик, то все, что мне нужно - отдать ему наружу XML с данными, а он уж довольно быстро справится с отрисовкой и остальными вещами.
26. awk 718 24.08.11 23:11 Сейчас в теме
(25)
1.
Про подмену http запроса. Вы сначала доберитесь до места в сети, где будете перехватывать. Речь о том, что файловая подмена реальна на уровне пользователя, а если используется удаленное взаимодействие, то при прочих равных условиях гарантированно на клиента придут данные, заложенные разработчиком в логику системы.

а. Вы сначала доберитесь до файлов. ;) Уровень среднестатистического win админа много меньше уровня среднестатистического unix админа только в этом и заключается сложность.
б. Посмею вас перефразировать. "при прочих равных условиях гарантированно на клиента придут данные, переданные последним шлюзом" - и это при условии, что он их передаст, а кабель не сбоит. Учите мат.часть, а конкретно OSI/ISO.
3.
Да, я общаюсь и с PHP, Perl, Python разработчиками.
Если ты с ними общаешься, то почему в статье ни намека на Perl и Python?
4.
Никто и в страшном сне не придумал общаться с 1с по COM.
- я общался и по COM и по OLE. При условии работы в гомогенной среде лучшего взаимодействия и не придумаешь. Проблемы начинаются при переходе в гетерогенную среду.
5.
Все прекрасно общаются по SOAP и это признанный стандарт.
Не все прекрасно, а только M$ ориентированные. И стандарт проприетарный. В UNIX среде REST более популярен из-за простоты реализации и меньших накладных расходах.

Из минусов SOAP:
1. В языках с динамической типизацией написание сервисов становится адом, для разработчика.
2. Трафик генерируемый протоколом достаточно велик - полезная информация может достигать до 0,01% от сообщения (в среднем по моему опыту 40-45%). Все остальное - это служебная (зачастую никому не нужная) информация.
3. Стабильная сборка есть только от M$ и под M$. Сборки под NIX системы пока дальше кандидат релиза не тянут.
Не плюсы, но и не минусы.
REST это протокол ориентированный на данные, SOAP - на процедуры.


6.
Да, управляемый интерфейс сильно шаблонизирован, по моему это очевидно.
С++ сильно типизирован и о боже!!! То же есть до ... шаблонов. (шутка). Шаблоны не минус, а плюс. Ты же не будешь в 1С писать сортировку таблицы значений, а воспользуешься шаблоном Сортировать("...").

7.
Настраивать формы "галочками" можно - для быстрой разработки самое то, я не спорю, но дальше галочек дело не пойдет.
Ну правильная галочка в правильном месте это круто. Примеры:

Задача выполнена............V
Деньги за проект получены...V

А куда дальше? Прикрутить Direct X к справочнику номенклатура? Прикольно. Более того в 7.7 в 2004 году я это сделал. И? В результате поставил себе галочку "Я неипаться крутой...V" (вот незадача и тут пресловутый чекбокс). А толку? САПР от 1С? Я если честно предпочту КОМПАС или AutoCAD, ну на худой конец Solid works. COD или DOOM? То же не покатит.

8.
Все зависит от решаемых задач и реализуемых проектов.
Угу, только есть t2b технологи, а есть t2t. То есть технологии ради бизнеса и технологии ради технологий.

9.
Если в команде есть грамотный верстальщик, то все, что мне нужно - отдать ему наружу XML с данными, а он уж довольно быстро справится с отрисовкой и остальными вещами.
И если убрать сослагательное наклонение, то получим: "Для того что бы работало нужны специалисты. Для сайта: дизайнер + веб программист + тестировщик + сисадмин. Для 1С: методист + программист + тестировщик. А чтобы скрестить это все нужен еще и архитектор с менеджером проекта(что бы пинать всех этих лодырей и контролировать волшебный треугольник проектирования, со сторонами: срок, функционал, бюджет и вписанной в этот треугольник окружностью качество)" - Не сорю, так оно и есть.

P.S. К чему я все это, а к тому что статья ни о чем. Читая заголовок хотелось почерпнуть что-то для себя новое, или увидеть реализацию уже известного, но нет. Общие фразы про все. И вредный для новичков шестой пункт. Который или мал или неуместен. Складывается впечатление, что он просто привязан за уши из-за заголовка.
27. 1cspecialist 1425 25.08.11 00:53 Сейчас в теме
(26)
awk пишет:
К чему я все это, а к тому что статья ни о чем.

Да, только Вы забыли подчеркнуть - ни о чем для вас. Если бы вы внимательно прочитали начало статьи - я так и спозиционировал ее, как базис для начинающих разбираться. Я даже и не собирался рассматривать глубже отдельные аспекты. Хотите большего - для специалиста вашего уровня есть куча специализированных ресурсов, официальных спецификаций и т.п.
Если убрать все ваши словесные экзерсизы (но я не в коем случае не сомневаюсь, что вы действительно специалист в тех областях, которые описываете), то вся ваша критика сводится к бональной демонстрации ваших познаний. И это прекрасно, что у вас такие глубокие познания. Возьмите и поделитесь ими, напишите отдельную статью для специалистов, в которой опишите все технические детали с приведением статистики, расчетом финансовых составляющих проектов, описанием морально-психологического климата в проектной команде и т.п. - все это интересно, но для другой целевой аудитории.
awk пишет:
Общие фразы про все
Ну да. Только не про все, а "общие фразы" по вполне определенной тематике. И опять-таки, я в начале статьи об этом упомянул, что статья носит теоретический характер и привел ссылку в нелюбимом вами шестом пункте на вполне конкретный практический пример.
PS. В любом случае, спасибо, что уделили время и проявили интерес к "неинтересной" статье, хоть и посредством критики.
GorDAn; марксист; SergSergWolf; talych; Трактор; Spartan; hogik; +7 Ответить
28. cool.vlad4 45 25.08.11 01:08 Сейчас в теме
(26) В защиту автора, так сказать :D Статью, честно скажу полностью не читал, - проглядел по быстрому(просто времени нет), - но подозреваю 1С-никам больше и не надо знать. Зачем?
1. О какой подмене http запроса идет речь(чего-то я не нашел откуда это в статье) и самое главное как это связано с 1С?...CSRF, XSS, как-то далеко от 1С...
3. Какая разница какой язык? Смысл везде один...по моему...а синтаксис можно посмотреть, где-нибудь...
4. Ну он имел виду скорее всего гетерогенную среду, в контексте php (который в подавляющем большинстве на nix-ах) и всяких там обменов.
5. Да, soap, php - шники не любят, я тоже не люблю, ну и что...иногда бывает нужен soap - видел на php как клиентов, так и сервисы, в pear-ах есть по моему. Зато rest геморрой для конечного пользователя/программиста, в плане поддержки.(Но шустрый)... кстати в текущем контексте, тогда вопрос, никто не имел дело с wadl?
6.-9. Ну, да.
Резюме - Да, в статье - наверняка есть погрешности и ошибки, за которые на специализированном ресурсе могли бы распять (хабр какой-нибудь), но это ИС, - поэтому считаю данную статью ликбезом для начинающих 1С программистов...когда им захочется быть просто скромными программистами, возьмут найдут информацию, почитают книжки...
29. 1cspecialist 1425 25.08.11 01:42 Сейчас в теме
(28) спасибо конечно, но "Статью... полностью не читал", а потом "...наверняка есть погрешности и ошибки" звучит как-то не очень :). Я не претендую на точность формулировок, да и цели такой не ставил перед собой, хотя старался быть близким к оригиналу. Если есть неточности - говорите, поправим. Но явных ошибок быть не должно.
(26) скорее говорит не про ошибки, а про бессмысленность статьи, но эта "бессмысленность" субъективна. Вокруг много людей только-только начинающих разбираться. И им на данном этапе точно не нужна точность и детальность - это их еще больше запутает.
30. cool.vlad4 45 25.08.11 03:01 Сейчас в теме
(29) нормально, - я думаю, ошибку, если постараться, можно найти где угодно(не ошибается только тот, кто ничего не делает), - вопрос не о том. А смысл - а наша жизнь имеет смысл? смысл он по ходу пьесы придумывается...
31. awk 718 25.08.11 09:32 Сейчас в теме
(28)
1. Ну не я про подмену начал, а автор коммент (23) п.4
2. Смысл один, да подходы разные: ООП, сервис ориентированное программирование, процедурное или функциональное. Но когда знаешь С++ - С# и java на ура изучаешь.
4. И?
5. Я имел дело с WSDL. Мне даже соап нравится больше чем REST с ним геммороя в 1С и не только меньше. В чем вопрос?
6. Ну да 6 пункт статьи моловат и вреден. Его бы переписать и я автору плюсану.

(29) Я говоря о пользе статьи и вредности пункта 6 в таком виде. Его надо расширить и убрать слова:
И пусть вас не смущает, что в платформе 8.2 появилась возможность работать с 1С из браузера и может показаться, что данная тематика неактуальна. Уверяю вас - это далеко не так. Управляемый интерфейс 8.2 очень сильно шаблонизирован и повлиять на него разработчик практически никак не может. Чтобы делать действительно красивые, функциональные и юзабилити-мощные интерфейсы придется пользоваться описанными технологиями.
32. 1cspecialist 1425 25.08.11 09:47 Сейчас в теме
(31) Пункт 6 написан правильно. Ничего вредного в нем нет. И уж тем более не надо его расширять. Хотите читателя погрузить в подробности - пожалуйста, напишите свою статью и распишите там все, что хотите.
33. cool.vlad4 45 25.08.11 10:20 Сейчас в теме
(31) в 5 я спрашивал про wadl ...интересны практические примеры
34. awk 718 25.08.11 11:51 Сейчас в теме
(33) Создания руками или генерации?
42. Neverpoint 10.04.15 17:00 Сейчас в теме
(34) awk, почитывая комментарии я понял, что вы просто кроме 1С не умеете больше ни с чем работать к сожалению. Поэтому так агрессивно воспринимаете других, кто 1С воспринимает лишь как данность печальной российской действительности. К сожалению 1С это боль и горе российского ПО, отвратительно написанная программа, навязанная везде и вся с которой вынуждены считаться люди и вникать в этот жуткий бред, натыкаясь на низкий уровень квалификации самих программистов 1С
44. awk 718 13.04.15 18:54 Сейчас в теме
(42) Neverpoint,
1С это боль и горе российского ПО


Напишите лучшее ПО... :))) Когда дойдете до: "ну его на ..." отпишитесь... Агрессию у меня вызывают критики, которые дальше puts "helo world" не шли... Причем с обоих сторон (1С и и не 1С)....
13. cool.vlad4 45 23.08.11 17:04 Сейчас в теме
Да, картинки, прикольные, - вот только ajax в контексте чего? в контексте ликбеза? просто привлек заголовок ...
16. rutony 54 24.08.11 12:27 Сейчас в теме
Прямые POST запросы с помощью HTTPСоединение, как показала практика, не могут передать не закодированные данные... и как результат многим сайтам не передать информацию (файл)...
17. Поручик 4428 24.08.11 12:41 Сейчас в теме
(16) Если прочитать двоичные данные в обычную строку, как в php или perl, то передать можно. Но штатных средств в 1С нет. Об этом я писал ещё два года назад http://infostart.ru/public/20017/
18. rutony 54 24.08.11 12:54 Сейчас в теме
(17) Да видел я твою статью, использовал ее за основу...
Проблема в том, что ты не сможешь штатными средствами перегнать двоичные данные в строку (без кодирования), корректно уж точно... Я убил на это дня два, плюнул, и написал на жаве...
19. Поручик 4428 24.08.11 12:56 Сейчас в теме
(18) Ты глухой? Я об этом и пишу. >>> Но штатных средств в 1С нет.
20. rutony 54 24.08.11 13:11 Сейчас в теме
(19) Не хами. Зачем тогда вообще что то писать в (17) если в (16) я все озвучил.
35. Dushka 7 15.09.11 16:40 Сейчас в теме
отличная статья! как раз для таких как я :), которые первый раз сталкиваются soap. Просто и доступно. спасибо!
36. fomix 26 13.10.11 10:22 Сейчас в теме
Только начинаю вникать в связку 1С+веб-сайт(интернет-магазин) в смысле активного обмена данными. Статью прочитал полностью и считаю ее заслуживающей внимания просто для понимания самого механизма. Работал в компании, где для обмена информацией с WMS системой был поднят сервер Apachi и написаны php скрипты для вызова процедур обмена между 1С и WMS. Автору спасибо! Тем более, что от разработчиков 1С вменяемых мануалов вообще нет!!!!
1cspecialist; +1 Ответить
37. Centrobit 23.12.11 10:41 Сейчас в теме
Добрый день. Мы создали платформу Agora на PHP, которая позволяет значительно упростить вопрос обмена не только с 1С.
Кому интересно, заходите на наш сайт www.centrobit.ru
Понимаю, что это жесткая реклама, но проблему мы действительно решили, поскольку на данной платформе реализовываем B2B интернет- магазины, в которых вопрос обмена данными стоит гораздо острее - там нужно и резервирование товара настроить и финансовые взаимоотношения вести и проч. Подобные проекты реализовываем за 2 месяца.
Другое дело, что стоит это счастье не дешево... В любом случае, будем рады любым обращениям и вопросам по данной тематике.
43. Neverpoint 10.04.15 17:13 Сейчас в теме
(37) Centrobit, вы сами пользовались тем что создали? нам 15 минут хватило, чтобы больше никогда не пользоваться этой "платформой". Это обычный сайт, сделанный на скорую руку с кучей глюков. Ввод организаций без ОГРН ИНН никак? а если я просто хочу вести CRM? в IE страницы выползают за поля и не видно заголовков. Поиск по системе - нет не слышали, я уж молчу про онлайн поиск без кнопки "найти", прикрутить движок непосильная задача видимо)))) по организациям поиска нет, по товарам тоже быстро не нашли - но наверно есть, иначе это эпик фейл. И совет - выбросьте движок GUI ваш на помойку, он сбоит по страшному так, что работать невозможно с системой. Все очень сырое и функционал не дотягивает даже до банального инет магазина, зато реклама пафосная на ютуб на которую я и купился. Не обижайтесь на мою критику - я просто честно все вам высказал, есть с чем сравнивать. Платформа - это когда можно настраивать не контент (перечень товаров), а АРХИТЕКТУРУ - поля, типы данных, логику взаимодействия. От того что вы назовете свой сайт платформой он платформой не станет. Зря вы написали про ваш продукт - это антиреклама. Причем убийственная
38. gn@mik 51 26.12.11 21:22 Сейчас в теме
Статья мне очень помогла
41. DitriX 1824 04.06.12 18:32 Сейчас в теме
Тоже не увидел особенного применения и чего то того, что не было описано в источниках на которые вы сослались.
Если вы говорите о
Почему бы не передавать обычный XML с теми же данными? Все просто. При получении XML его придется разбирать (парсить) при помощи трехэтажного программного кода, так как заранее неизвестно, что это за XML и какая у него структура.

Но это же бред, с таким же приколом засуньте в хмл хеад описание структуры и вперед.
Преимущество soap далеко не в этом.

К тому же, то что уже выше описали, просьба убрать из статьи высказывания: (Пометил жирным)
И пусть вас не смущает, что в платформе 8.2 появилась возможность работать с 1С из браузера и может показаться, что данная тематика неактуальна. Уверяю вас - это далеко не так. Управляемый интерфейс 8.2 очень сильно шаблонизирован и повлиять на него разработчик практически никак не может. Чтобы делать действительно красивые, функциональные и юзабилити-мощные интерфейсы придется пользоваться описанными технологиями.

Так как не только специалисты читают эти темы, и могут понять, где человек слегка перегнул палку, но и клиенты, которые потом будут кричать, что их развели, так как управляемый интерфейс - это чушь.
Или убедите в обратном.

Так как если уж вам ОЧЕНЬ сильно надо что то сделать этакое, то вам в помощь веб поле, которое подерживает ява скрипты и пилите что угодно. (при чем в нормальной связке с 1С)

Веб-сервисы также можно использовать для обмена между двумя базами

Нельзя! Связка двух баз делается планами обмена, и не спроста - открою вам секрет. Или же вы просто не работали с большим количеством баз, которые тесно связаны. Если вы будете делать это через соап, то это чистый развод клиента.
Да, через соап можно передавать файл выгрузки хмл из планов обмена, но он играет лишь роль транспорта в таком случае. И то, не всегда успешно справляется.
Тот бред который описан ниже, в этом параграфе, опущу. Так как это по сути будет реализация велосипеда, и чистая выкачка денег с клиента.

Та и вообще, у вас в статье ни о чем не сказано, я таки положительно не знаю куда копать. Вы что то описали, рассказали, налили воды в текст и все.
Лучше бы уже сделали просто подборку ссылок по затронутым тут технологиям и не пытались писать реферат.
Оставьте свое сообщение

См. также

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С Промо

Математика и алгоритмы Практика программирования v8 v8::blocking 1cv8.cf Бесплатно (free)

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    34567    ids79    40    

Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

WEB v8 1cv8.cf Бесплатно (free)

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

22.09.2020    1647    hpi    4    

Формирование HTTP запроса формата multipart/form-data с двоичными данными, используя ПотокВПамяти

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант формирования запроса

11.09.2020    1807    malikov_pro    11    

Использование шаблонного процессора для формирования HTML страниц

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу использование шаблонного процессора Handlebars запущенного на Node.js

24.08.2020    1281    malikov_pro    26    

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

Практика программирования WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    55737    Serginio    33    

Загрузка или обновление файла на яндекс диске через rest-api

Практика программирования Файловые протоколы обмена, FTP WEB v8 Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на яндекс диск или обновить существующий.

12.08.2020    1392    pavelpribytkin96    10    

Самый простой парсинг и обработка веб-страниц в 1С

WEB Универсальные функции v8 1cv8.cf Бесплатно (free)

Рассмотрим самый простой парсинг веб-страниц средствами платформы 1С и еще некоторые полезные приемы работы с веб-страницами.

07.08.2020    4181    YPermitin    18    

Загрузка или обновление файла на гугл диске

Практика программирования Файловые протоколы обмена, FTP WEB v8 1cv8.cf Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на гугл диск или обновить существующий.

06.08.2020    1125    pavelpribytkin96    0    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    25845    ruha    14    

Использование Yandex Translate (Яндекс.Переводчик)

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант подключения и использования Yandex Translate.

08.07.2020    1943    malikov_pro    6    

Ограничение доступа к HTTP публикациям 1С сервера используя NGINX

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант ограничения доступа к HTTP публикациям 1С сервера используя NGINX.

02.07.2020    5966    malikov_pro    0    

Работа с AliExpress через API

WEB v8 Бесплатно (free)

В публикации опишу подход работы с API AliExpress и примеры кода.

23.06.2020    3267    malikov_pro    12    

Будни автоматизации или "мне нужна программка для 3D упаковки" Промо

Практика программирования Математика и алгоритмы Оптовая торговля Оптовая торговля v8 1cv8.cf УУ Бесплатно (free)

Автоматизация отечественных предприятий, которой приходиться заниматься, это нужная и высокооплачиваемая, но довольно нервная работа. Выручает юмор. Например, при общении с требовательным клиентом можно вспомнить анекдот: "Держась руками за стену, на ногах еле стоит мужик. К нему пристает ребенок: "Ну, папа, пожалуйста, сделай мне кораблик!", папа отвечает: "Ага! - Сейчас все брошу и пойду делать тебе кораблик!". Про один такой сделанный для клиента "кораблик" и хочется рассказать. Надеюсь, совместное погружение в теплое ламповое (то есть клиентоориентированное) программирование доставит Вам положительные эмоции, да и задача попалась интересная. Поплыли?

24.03.2014    45249    ildarovich    116    

История создания успешной системы чат-ботов на 1С

WEB v8 Бесплатно (free)

Использование чат-ботов в мессенджерах позволяет автоматизировать многие сложные бизнес-процессы путем диалога с системой через виртуального собеседника. О том, как создать универсальную систему ботов с бэкендом на 1С, работающую в Telegram, Viber и Facebook Messenger одновременно, на конференции Infostart Event 2019 Inception рассказал программист-фрилансер Константин Гейнрих.

21.05.2020    6812    CyberCerber    14    

Парсинг html страниц с выводом информации через JavaScript с использованием Selenium

WEB v8 1cv8.cf Бесплатно (free)

Есть девочки как девочки, есть мальчики как мальчики, есть сайтики как сайтики, но странички их обманщики. В целях сохранить информацию, от автоматизированного сбора, многие ресурсы пытаются защитить ее. Один из таких способов - вывод информации на странице через JavaScript. При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные, и в 1с получаем практически пустую страницу. В статье приведу пример разработки, для парсинга таких страниц, без регистрации и смс.

20.05.2020    3314    platonov.e    25    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Шаг третий, WooCommerce, публикация категорий товаров

WEB v8 1cv8.cf Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции публикации категорий товаров в магазин WooCommerce, с комментариями внутри.

13.05.2020    2818    osivv    3    

Приемы обработки больших данных в 1С Промо

Универсальные обработки Математика и алгоритмы Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

Рассказ об эффективных приемах организации обработок больших объемов данных на платформе 1С

07.08.2015    66999    tormozit    27    

Интеграция Camunda BPM и 1С

WEB Интеграция v8 Бесплатно (free)

Быстрый старт. Только практические примеры. Установка, запуск и публикация бизнес-процесса на сервере Camunda BPM. Управление бизнес-процессами из 1С при помощи Camunda REST API.

12.05.2020    3481    zhichkin    19    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Первый шаг

WEB v8 Россия Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции 1С с комментариями внутри.

28.04.2020    4144    osivv    23    

Выразительный Web API

WEB v8 Бесплатно (free)

Теория разработки Web API с ожидаемым поведением, за который не будет стыдно за пределами мира 1С.

27.04.2020    5998    nbeliaev    22    

XDTO - это просто Промо

Математика и алгоритмы v8 1cv8.cf Бесплатно (free)

С появлением платформы 8.1 фирма “1С” представила механизм, носящий интригующее название XML Data Transfer Objects или, если коротко - XDTO. По традиции, документирование механизма составлял тот, кто хорошо разбирался в вопросе, а стало быть опустил “и так понятные” с его точки зрения моменты. Целью данной статьи (или цикла статей, как получится) стало желание поделиться накопленным опытом. Мне кажется, многие неочевидные вещи в механизме XDTO необходимо осветить получше.

24.12.2012    293288    Evil Beaver    173    

Интеграция УАТ с топливными сервисами

WEB v8 1cv8.cf Автомобили, автосервисы Бесплатно (free)

Интеграция конфигурации Управление автотранспортом с топливными веб-сервисами.

21.04.2020    7183    RPGrigorev    2    

Интеграция 1С с веб-сервисами Лукойл ЛИКАРД

WEB v8 1cv8.cf Россия Бесплатно (free)

Описание интерфейса взаимодействия сервиса Лукойл- ЛИКАРД с информационной системой 1С.

20.04.2020    3879    RPGrigorev    0    

Как я собрал для себя высокопроизводительный и бесплатный облачный бекенд для 1С на PosgreSQL + PostgREST

Производительность и оптимизация (HighLoad) WEB Интеграция Мобильная разработка Администрирование веб-серверов v8 Бесплатно (free)

В этой статье я расскажу о проблемах бека для мобильных приложений или другого фронта, который требует производительности, быстрой реакции и отказоустойчивости, и как я решил это благодаря opensource проекту PostgREST и СУБД Postgre SQL 12. Проведу простой тест производительности для сравнения 1С с данным решением. Это может быть полезно всем, кто разрабатывает мобильные приложения либо фронтсайд-приложения для 1С на чем угодно - на мобильной платформе или на нативном языке или на Simple UI. И также обзор новых функций SimpleUI для связи с этим бекендом.

31.03.2020    12558    informa1555    31    

Самоучитель языка запросов 1С. Промо

Практика программирования Решение задач на 1С:Специалист Математика и алгоритмы v8 v8::Запросы Бесплатно (free)

Сервис для изучения запросов 1С: "Консоль изучения запросов 1С:Предприятие 8". Теперь и с конструктором запросов!

07.05.2013    109881    bpc222    327    

Treemapping — способ визуализации данных древовидной структуры. Карта-схема дерева

Математика и алгоритмы Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Предлагается ознакомиться с редким способом графического представления иерархических данных. Приводится алгоритм формирования и пример реализации.

18.02.2020    4763    randomus    18    

Получение html-кода страницы. JS из 1С

Практика программирования WEB v8 Бесплатно (free)

Получение исходника страницы, выполнение произвольного js-кода. Теперь с WebKit от 1С.

18.02.2020    6131    Yashazz    1    

Отладка конфигурации в режиме веб-клиента

WEB v8 Бесплатно (free)

После очередного обновления платформы при попытке запуска отладки в веб-клиенте стало появляться сообщение. Собственно, до этого момента никогда веб-клиентом особо не пользовался и необходимости в отладке как-то не возникало. Данное сообщение заставило задуматься, что не так с отладкой в веб-клиенте и как ее собственно включить? Тот самый неловкий момент, когда программа просит обратиться к администратору, а администратор - это вы.

12.02.2020    4827    gamletspb    3    

Решение транспортной задачи запросом Промо

Математика и алгоритмы v8 Бесплатно (free)

Списание по двум последовательностям партий запросом (без программной обработки)

1 стартмани

30.04.2014    35017    bforce    22    

Ещё немного о ИНН и сервисе DaData

WEB v8 1cv8.cf Бесплатно (free)

Об использовании сервиса dadata и немного информации о возможностях получать данные по ИНН. Возможно, кому-то будет полезным.

14.11.2019    7217    xxxAndricxxx    21    

Разбор любого JSON-объекта в соответствующую структуру

Инструментарий разработчика WEB v8 1cv8.cf Бесплатно (free)

Данная публикация предназначена разработчикам 1С, которым приходиться разбирать данные формата JSON. Выложенный пример кода создает объект типа Структура, полностью повторяющий структуру данных формата JSON.

13.11.2019    9039    user665435_al.windstorm    15    

Проверка reCAPTCHA от Google на стороне HTTP-Сервиса

WEB v8 Россия Бесплатно (free)

Код проверяет переданный токен reCAPTCHA от Google при вызове HTTP-Сервиса. Таким образом проверяем, отправил ли данные на наш HTTP-Сервис робот или реальный пользователь.

06.11.2019    6036    AVR    0    

Парсер запросов 1С. Часть 1: Введение, разбор математических выражений Промо

Математика и алгоритмы v8 Бесплатно (free)

Рано или поздно становится скучно решать типичные задачи, для которых придумана 1С. Голова пухнет от бухгалтерских терминов и очередных "хотелок" пользователей. Именно в такие моменты хочется гордо поднять голову, воскликнуть "Но я же программист!" и заняться чем-то интересным. В цикле статей я постараюсь доступно описать, как устроены парсеры в целом и на примере парсера языка запросов 1С. Требования к навыкам читающего: основы языка 1С, основы алгоритмизации.

1 стартмани

04.12.2013    30709    juntatalor    49    

Простой способ опубликовать базу 1C из дома в интернет, когда Ваш провайдер этого не обеспечивает (3G, 4G модем и т.п.)

WEB Облачные сервисы, хостинг v8 1cv8.cf Бесплатно (free)

Если у Вас возникла потребность опубликовать из дома во всемирную паутину базу 1С (например, для тестирования), в т.ч. интерфейс OData, HTTP или Web-сервисы, а интернет-провайдер (например, 3G Мегафон) не предоставляет возможности инициировать соединения извне, то в конце статьи Вы найдете простой, быстрый и условно-бесплатный способ это сделать.

14.10.2019    11542    uno-c    27    

Самый примитивный HTTP-сервис в мире

WEB v8 Бесплатно (free)

Пошаговый пример создания простейшего HTTP-сервиса, который генерирует HTML-страницу для поиска товара, а также реализует асинхронное получение данных из базы.

12.09.2019    21478    YPermitin    26    

Регистры бухгалтерии. Общая информация

Практика программирования Математика и алгоритмы v8 v8::БУ БУ Бесплатно (free)

Общая информация о внутреннем устройстве регистров бухгалтерии.

05.09.2019    27982    YPermitin    24    

Кэширование COM-соединения. Три способа Промо

Практика программирования Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    41229    YPermitin    41    

"Хочу универсально!" [Часть 1]

Математика и алгоритмы Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

Сентябрьская серия статей про то, как начинающий разработчик Вася проходит путь от простой задачки к созданию своего механизма. На этот раз - открытие значения из текущей колонки.

02.09.2019    9797    SeiOkami    35    

Иерархия без "В ИЕРАРХИИ"

Математика и алгоритмы v8 Бесплатно (free)

Говорится о том, как эффективно представлять иерархию в СУБД, как получать и использовать эти представления при решении задач в запросной технике. Уточняются и дополняются запросы из статьи "Уровни, глубина, прародители, циклы и аналоги запросом" [https://infostart.ru/public/160707/].

22.08.2019    12310    ildarovich    19    

EnterpriseData – часть 3. Загрузка данных, идентификация объектов

Практика программирования Математика и алгоритмы Перенос данных из 1C8 в 1C8 Разработка v8 v8::УФ 1cv8.cf Бесплатно (free)

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    14836    ids79    8    

Сервис для изучения методов платформы 1С:Предприятие 8. Бесплатно! Промо

Практика программирования Решение задач на 1С:Специалист Математика и алгоритмы v8 Бесплатно (free)

Бесплатный ON-Line сервис изучения методов платформы 1С:Предприятие 8. Подготовка к аттестации 1С:Специалист on-line! Тестовые задания по различным видам учета! Подсказки для оптимального решения!

27.06.2013    50009    bpc222    52    

Свой веб интерфейс к 1С: побеждаем CORS на IIS, сохраняя авторизацию

WEB Администрирование данных 1С v8 Бесплатно (free)

Если "веб морда" расположена не по тому же адресу, что и публикация 1С (что часто бывает, например, при разработке, публикация 1С на http://localhost/1c, а разрабатываемое веб-приложение на http://localhost:8080) или, например, мы заходим на веб приложение то по ip адресу, то по имени сервера, или просто веб сервер и сервер, на котором опубликована 1С - это разные сервера, то для большинства запросов от браузера к 1С срабатывает политика CORS, которая заключается в том, что браузер сначала посылает запрос OPTIONS, на который сервер должен ответить определенным образом, заголовками, содержащими разрешения, а потом уже (если разрешение есть), браузер посылает основной запрос. В случае, когда в публикации 1С (default.vrd) жестко прописан логин и пароль, разрулить ситуацию можно средствами 1С. В случае же, когда нужно сохранить авторизацию (или используется стандартный интерфейс odata), начинаются проблемы.

20.08.2019    11344    Fragster    9    

Совсем простой обмен HTTP, 2 функции

WEB v8 Бесплатно (free)

Функция для вызова рест-сервиса и функция для разбора результата. Быстро, просто, универсально.

12.08.2019    8895    Yashazz    15    

Использование HTTP-сервиса для создания "фронтенда" HTML/CSS/jQuery. Продолжение

WEB v8 1cv8.cf Бесплатно (free)

Получение изображений из информационной базы и отправка файлов через "фронт" на HTML/CSS/JS.

08.08.2019    8274    Sedaiko    1    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    30429    anig99    6    

Обработчики событий при записи объектов. Зачем и что за чем?

Математика и алгоритмы v8 Бесплатно (free)

Программисту, имеющему немного опыта на платформе 1С 8.3, бывает сложно разобраться: ПередЗаписью, ПриЗаписи, ПослеЗаписи, на сервере, на клиенте, в модуле формы, в модуле объекта.... Эта шпаргалка была создана в процессе обучения и реального опыта с целью разложить всё по полочкам, чтобы было четкое понимание в каком случае какой обработчик нужно использовать и в какой последовательности они запускаются при записи и проведении документов. Данная статья будет полезна в большей степени начинающим разработчикам. Но и опытным позволит освежить информацию, упорядочить её.

25.07.2019    49317    AlbinaAAA    28    

Управление качеством кода

Математика и алгоритмы Рефакторинг и качество кода v8 Бесплатно (free)

О SonarQube, АПК, EDT. Какие преимущества дает их использование. Для каких команд подходит.

22.07.2019    16360    Stepa86    33    

Что делает "В ИЕРАРХИИ" в запросе?

Математика и алгоритмы v8 Бесплатно (free)

Описание действий платформы 1С при использовании конструкции "В ИЕРАРХИИ" в запросах.

16.07.2019    26115    YPermitin    34    

v8: Концепция минимального изменения конфигурации для легкого обновления Промо

Математика и алгоритмы v8 1cv8.cf Бесплатно (free)

"Лучше день потерять потом за пять минут долететь" ((с) "Крылья, ноги и хвосты") или как сделать так чтобы обновление конфигурации проходило с минимальными трудозатратами.

28.01.2013    38094    MarSeN    57    

Создание отчетов с помощью СКД - основные понятия и элементы

Практика программирования Математика и алгоритмы v8 v8::СКД Бесплатно (free)

Основные принципы работы СКД. Понятия схемы компоновки и макета компоновки. Описание основных элементов схемы компоновки: наборы данных, поля, вычисляемые поля, ресурсы, параметры.

25.06.2019    51876    ids79    25    

Реализуем Стек, Очередь и Приоритетную очередь в 1С

Практика программирования Математика и алгоритмы v8 1cv8.cf Россия Бесплатно (free)

В статье рассматриваются способы реализации таких абстрактных структур данных, как стек, очередь и приоритетная очередь, используя готовые типы данных 1С. Выявляются "узкие" места, сложные моменты в реализации и сравнивается скорость работы.

24.06.2019    14082    RonX01    65    

Вычисление 200 тысяч знаков числа pi

Математика и алгоритмы v8 Россия Бесплатно (free)

В статье рассматриваются возможности платформы выполнять сверхточные вычисления без использования сложных алгоритмов и внешних компонент на примере вычисления числа pi.

28.05.2019    7863    Oleg_nsk    96    

1Script.Web. Интернет-приложения на языке 1С

WEB OneScript Инструментарий разработчика v8 Бесплатно (free)

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

20.05.2019    20310    Evil Beaver    33