7.7 Интеграция 1С 7.7 с сайтом для онлайн торговли - схема взаимодействия

Тема в разделе "Обмен данными в "1С:Предприятие 7.7"", создана пользователем umah, 28 янв 2016.

  1. TopicStarter Overlay
    umah
    Offline

    umah

    Регистрация:
    24 ноя 2009
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте.
    Появилась задача реализовать онлайн продажи в пере-переписанной Комплексной конфигурации.
    Прошу совета, т.к. подобных задач решать не приходилось.
    Имеем: 1С 7.7 Комплексная - дико переписанная, на SQL 2005. В 1С ведется оптовая торговля. По задумке на сайте покупатель набирает заказ, если товар есть в наличии, то покупатель оплачивает его и ждет доставку.

    Проблема 1: покупатель должен быть уверен, что товар из заказа есть в наличии. Я думаю попробовать с сайта коннектиться непосредственно к SQL-серверу, для получения актуальных остатков. Есть ли другие способы быстро получить остатки?

    Проблема 2: После того, как покупатель оплатил заказ, в 1С нужно сформировать документ, который спишет остатки. Как можно эту операцию сделать наиболее быстро, чтобы минимизировать возможность списания этих остатков оптовиками? Единственное, до чего я додумался, это ежеминутная проверка каталога с заказами, но это решение топорное, может кто подскажет более оптимальное решение? Заранее спасибо.
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.760
    Симпатии:
    509
    Баллы:
    204
    А почему вы решили что это топорно ?
    Обычно делается как. На сайте крутится скрипт, который парсит файл с остатками и обновляет инфу на сайте. В центральной базе же можно организовать такой механизм, который остатки эти выкладывал на сайт и собирал инфу по заказам.
  3. TopicStarter Overlay
    umah
    Offline

    umah

    Регистрация:
    24 ноя 2009
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    20 с лишним тыс. позиций постоянно выгружать в файл не комильфо. Отсюда и возникла мысль лезть напрямую к SQL по конкретным позициям.

    А насчет топорного решения дело в том, что даже если обработка в 1С будет проверять выгрузку с заказами раз в минуту, за эту минуту оптовики могут эти остатки убрать в ноль, а заказ уже оплачен
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.760
    Симпатии:
    509
    Баллы:
    204
    Ну тогда можно попробовать сделать общую базу для сайта и центральной базы, и предусмотреть механизмы защиты от SQL-инъекций.
  5. TopicStarter Overlay
    umah
    Offline

    umah

    Регистрация:
    24 ноя 2009
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    А если так: Через ОбработкуОжидания начинаем крутить проверку каталога. Как только приходит запрос на проверку остатков - остатки проверяются и если есть, формируется резервирование и отправляется подтверждение. А после оплаты формируется продажа с этого резерва.
  6. MaxxaM
    Offline

    MaxxaM Опытный в 1С

    Регистрация:
    16 окт 2007
    Сообщения:
    288
    Симпатии:
    2
    Баллы:
    29
    Если есть регистр "Резерв" (и система резервирования в целом) можно прямо с сайта добавлять в скуль запись в таблицу резервов, а потом при проведении расходки уже сторнировать чужеродные записи
  7. TopicStarter Overlay
    umah
    Offline

    umah

    Регистрация:
    24 ноя 2009
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Я себя в принципе могу назвать опытным программистом в 1С 7.7, но лезть в таблицы для занесения данных напрямую не решусь. Есть косяки, которые проявляются не сразу, и я не хочу через месяц обнаружить, что база порушена и восстановлению не подлежит. Я уже тр...лся с регистром партий, больше в этот ад не хочу. К тому же регистры двигаются документами, и если через SQL заносить док резерва, то задача очень усложняется, а если без доков, то регистр, двигаемый святым духом очень напряжно отслеживать. В общем, ну его нахер, такие сложности :)

    Слава богу, задача не стоит в ключе "сделай или умри".

Поделиться этой страницей