Имя: Пароль:
1C
 
Как победить грабли полного онлайн-взаимодействия сайта с УТ11?
,
0 Гений 1С
 
гуру
04.06.21
08:12
Есть УТ11 и самописный сайт.
Обдумываю интеграцию.

В идеале все красиво. Происходит какое-то изменение в 1С, тут же вызывается API сайта и оно отражается на сайте.
И наоборот. Происходит какое-то изменение на сайте, тут же вызывается API 1С и оно отражается в базе.

Но тут возник вопрос о целостности транзакций.
Если сайт или база не доступны, красота рушится.

Т.е. отменять транзакции нельзя, клиент сделал заказ, нельзя же ему говорить - закажите позже, когда 1с будет работать.

Следовательно, возникает очередь и вся "красота" рушится.
Приходится и на сайте и в 1С организовывать очередь.

Разработчики сайта упростили мне жизнь, говорят, будут вызывать только методы 1С.

Как лучше организовать такую очередь? Если через план обмена, там нет последовательности. А она важна, надо сначала товар передать, потом заказ, а то товара может и не быть.
Пихать в регистр сведений с регистром "дата"? Это ж лишняя транзакционная нагрузка, хотя там объемы небольшие.
Или просто тупо из очереди сперва товары выбирать, потом заказы?

Как сделать по красоте?
1 PuhUfa
 
04.06.21
08:23
Дожили... Гений1С не может придумать гениально красивую реализацию и спрашивает у простых смертных -)
2 Галахад
 
гуру
04.06.21
08:36
В (0) как-то малопонятно изложено.

А вообще зачем очередность товаров и заказов?
3 ДенисЧ
 
04.06.21
08:39
Ставь кавку. Или кролика. На самый плохой случай - датареон.
4 acht
 
04.06.21
08:41
Геня не хочет думать. Геня хочет критиковать предложеное. Подайте Гене предложение!
5 Василий Алибабаевич
 
04.06.21
08:41
(3) Все эти слова ему ниочем. "Разработчики сайта упростили мне жизнь, говорят, будут вызывать только методы 1С." ЦЫ. Ему в 1С нужно. И даже не ему, а разработчикам.
6 ДенисЧ
 
04.06.21
08:42
(5) Да ему любые слова ни о чём. Это я так, выпендриться. Всё равно он свой велосипед сделает. С треугольными колёсами.
7 ildary
 
04.06.21
08:42
(4) а потом в телеграм канале 1С пишут, что миста токсичная, не желает помогать, ага.
8 acht
 
04.06.21
08:43
(0) А прикинь, ты в 1С будешь обновления накатывать, а в этот момент клиент на сайте заказ будет пытатся сделать. И разработчики сайта такие "а мы ничего не знаем, это Геня".
9 acht
 
04.06.21
08:43
(7) Что такое "телеграм канал" и почему он кого-то беспокоит?
10 ДенисЧ
 
04.06.21
08:47
(9) телеграм канал, канает и будет канать!
11 PLUT
 
04.06.21
08:49
(0) посмотри в сторону готовых CRM, там вся работа магазина и манагеров с заказами и клеентами ведется, а одноэс сбоку, ну там товар собирается, доставляется и...

если одноэс приляжет, некритично, обменяется с CRM заказами, статусами
12 acht
 
04.06.21
08:58
(10) Толпа заколебалась!
13 Гений 1С
 
гуру
04.06.21
09:30
(11) ну они хотят в 1це обрабатывать и собирать заказы
14 Гений 1С
 
гуру
04.06.21
09:31
(2) ну в принципе да, новый товар только из 1с уходит, порядок не критичен
15 PLUT
 
04.06.21
09:41
(13) "Т.е. отменять транзакции нельзя, клиент сделал заказ, нельзя же ему говорить - закажите позже, когда 1с будет работать."

вот эта что за дичь?

CRM на сайте оформляет заказы. а дальше уже 1це обрабатывает и собирает заказы, если привстала после прилегания
16 DrZombi
 
гуру
04.06.21
09:44
(0) Что значит у вас не предусмотрен Офф-лайн от баз Сайта и 1С?
1. На сайте копишь, в 1С обрабатываешь.
2. В 1С копишь, на сайте размещаешь (обновляешь).

Все ровно все не происходит в онлайн режиме? (задержки так или иначе есть)
17 acht
 
04.06.21
11:10
(15) Геня просто никогда ничего сам в интернетах магазинах не покупал и не понимает зачем там подтверждения заказа разные на электропочту падают, смс ки какие-то прислаются...
18 Aleksey
 
04.06.21
11:25
(0) поздравляю ты придумал ESB
19 Ivan_495
 
04.06.21
11:30
в 1с просто добавить реквизит дока " отправлен на сайт" отправлять доки обработкой. доки с сайта не попавщие в 1с , отражать в sql таблице.
20 Ivan_495
 
04.06.21
11:30
не попавшие))
21 Ivan_495
 
04.06.21
11:35
а лучше если транзакция не проходит отправлять sms админу, будут понятны причины зависаний.
22 Гений 1С
 
гуру
04.06.21
11:42
скажите, там хотят со стороны сайта делать запросы по всем товарам, остаткам, заказам, причем с пагинацией.
Идея свежая, но мне кажется, 1С не потянет, тем более файловая.
23 Гений 1С
 
гуру
04.06.21
11:44
А может использовать какие-либо представления? В 1С есть такая шняга? Типа таблицы для внешних данных?
24 polosov
 
04.06.21
11:46
(22) Ларек с шаурмой автоматизируешь?
25 Гений 1С
 
гуру
04.06.21
11:47
Я прав вот в этом?

ну тут еще будет проблема сборки JSON. в 1С нет инструментов для быстрого формирования JSON по результату запроса.
Т.е. записи будут перебираться и формироваться построчно текст ответа. В любом случае это не очень быстро. Поэтому большие объемы данных будут гоняться не очень быстро.
26 Гений 1С
 
гуру
04.06.21
11:47
(24) коммерческая тайна
27 Галахад
 
гуру
04.06.21
11:55
(25) В принципе достаточно быстро.
28 PuhUfa
 
04.06.21
11:57
(25) на сайте идет отгрузка по 1к накладных в минуту в которых отстатыщь позиций?
29 polosov
 
04.06.21
11:58
(25) Это у тебя нет инструментов. У 1С все есть.
30 ДедМорроз
 
04.06.21
12:00
Тут или только online или очередь.
Очередь может вести отдельное приложение типа rabbit MQ,но тогда оно тоже должно быть всегда доступно.
Метод 1с - регистрация к обмену в отдельной таблице,а отправка потом,только это потом нужно очень грамотно подобрать.
31 Гений 1С
 
гуру
04.06.21
12:01
(30) да я понимаю, что в 1С все по очереди.
Я предложил еще ODATA, но не знаю, насколько она шустрая...
32 Ivan_495
 
04.06.21
12:12
(31) odata быстрая
33 PLUT
 
04.06.21
12:26
(25) фабрикаXDTO умеет быстро в жопсон сохранять для "тела" хэхэтэпэ-запроса

и эта, на XDTO-пакетах удобно апи для тырнет-интеграции реализовывать. структура данных становится "прозрачной". заполнение и получение "тела" в несколько строк заклинаний на одноэс
34 PLUT
 
04.06.21
12:31
+(33) вот тут небольшой пример есть использованию XDTO для жопсон-тела запроса

Объектная модель без метаданных
35 Гений 1С
 
гуру
04.06.21
12:51
(33) а как результат запроса запихнуть без перебора в фабрикуXDTO?
36 Гений 1С
 
гуру
04.06.21
12:51
(32) в ODATA нельзя соединения делать? Только сырые данные из таблиц, так?
37 mikecool
 
04.06.21
12:53
что то не вяжутся объемы сайта и файловая 1с
38 Krendel
 
04.06.21
12:56
(37)религия гения запрещает использование серверных технологий, только примитивные, только хардкор
39 PLUT
 
04.06.21
12:59
(35) значениевстрокувнутр() ёпта

а зачем без перебора невпихуемое пихать в XDTO?

типа ты им Запрос.Выполнить().Выгрузить() в жопсон и дальше там сами как хотите разбирайтесь?  так не работает

я так понимаю апи с сайтом тоже пока на уровне Г1С-идей?
40 d4rkmesa
 
04.06.21
13:04
(35) Выгрузить результат запроса в таблицу значений, которую при сериализации обрабатывать функцией преобразования, преобразовывая в массив структур.
41 PLUT
 
04.06.21
13:06
(40) ну так любой одноэсник может, а вопрос был "как без перебора результат запроса запихать" :)
42 Гений 1С
 
гуру
04.06.21
13:18
(39) ндык API они мне дали. Там есть, например, запрос из 1С полного списка товаров, причем с с-стью, поставщиком и последней закупочной. И с пагинацией. Изначально я им изменения предлагал, а они олдскул, хотят всё и сразу засасывать к себе из 1с.
43 Гений 1С
 
гуру
04.06.21
13:19
(40) дык сериализация медленная будет
44 ДенисЧ
 
04.06.21
13:20
(42) Нафейхоа на сайте (!!!!!) с/с и закупочные цены? Я бы на твоём месте послал бы их на известную гору в Перу
45 Гений 1С
 
гуру
04.06.21
13:21
(44) наверное для оперативного просмотра прибыли
46 Гений 1С
 
гуру
04.06.21
13:22
(44) клиент всегда прав, ты шо
47 PLUT
 
04.06.21
13:24
(43) ну дык выложи им в текстовый файл с разделителем (CSV) на sftp, пусть забирают с определенной периодичностью всё

а если определенным позициям запросить с пагинацией (ну например для 20 товаров), то можно и по апи им быстро ответить. но чтобы по любой прихоти быстро всё из 1С отдавать - опять дичь дичайшая
48 Aleksey
 
04.06.21
13:24
(44) ну может у них ценообразование на сайте реализовано.
49 ДенисЧ
 
04.06.21
13:25
(46) Вот на той горе и пусть будет хоть прав, хоть лев.
50 PLUT
 
04.06.21
13:26
+(47) быстро всё - всё что нажито непосильным трудом - остатки, примерностоимость, цены, последняя закупочная по поставщикам и прочая муть
51 Гений 1С
 
гуру
04.06.21
14:17
(47) так по запросу из API хотят. Хотя можно, конечно, файлик изначально готовить, а передавать по запросу, но тут ключевое, что они хз как часто будут запрашивать. Попробую через ADATA
52 Вафель
 
04.06.21
14:18
по плану обмена вполне можно очередь организовать.
делай выбрать изменения по таблицам в нужном тебе порядке
53 СвинТуз
 
04.06.21
14:30
(0)
Не нужно ничего побеждать.
Нужно латку поставить.
54 DGorgoN
 
04.06.21
14:36
(52) +1
55 Гений 1С
 
гуру
04.06.21
14:39
(52) я больше имел ввиду, что план обмена не хранит порядок регистрации объекта (или время)
56 Гений 1С
 
гуру
04.06.21
14:40
Ну коллеги, всем спасибо, с божьей и Мисто-помощью ТЗ написал.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой