Имя: Пароль:
1C
 
Сохранение переменной COM при переходе с сервера на клиента и обратно
0 Aswed
 
23.12.19
17:25
Есть две базы. Соединяюсь из одной с другой через COM.
Всё хорошо, но есть необходимость после соединения получить инфу и вывести пользователю для выбора.
Затем после его выбора производить следующие действия в базе источнике.
Соединение устанавливаю при первоначальном обращении к базе. Но.
Где его хранить что бы вторично к базе не подключаться? Как только я возвращаюсь на клиента переменная с соединением само собой теряется.
Хочу хранить через реквизит формы, но какой тип ему задать? Не могу найти. Подскажите.
1 dka80
 
23.12.19
17:35
Получай за раз все данные, потом пользователь выбирает что нужно, а ты в ранее полученных данных устанавливаешь отбор
2 Aswed
 
23.12.19
17:43
(1) Делал так. выборка данных очень уж большая выходит.
Так выбирается 2 секунды, когда знаю что выбирать, а если все данные то почти полторы минуты.
Хотелось бы хранить соединение и обращаться когда надо. В то постоянно подключаться ни комильфо(
3 lodger
 
23.12.19
17:43
1) веди работу в пределах одной формы.
2) на этой форме сделай переменную с директивой &НаКлиенте.
4 H A D G E H O G s
 
23.12.19
17:44
(0)
Соединение помести в Структуру, структуру во временноехранилище.
Перед повторным употреблением проверяй на ТипЗнч
5 Garykom
 
гуру
23.12.19
17:44
Так прикольно наблюдать когда приходят к идее асинхронности и отказа от модальности
6 Mort
 
23.12.19
17:45
переменную Com соединения можно пихнуть во временное хранилище. И она работает (пока жив объект). Но это не документированная фича и работа не гарантируется.
7 H A D G E H O G s
 
23.12.19
17:46
(6) 1С скажет, что нельзя.
Такое ощущение, что сейчас 2008-ой, походу народ опять все забыл.
8 Garykom
 
гуру
23.12.19
17:47
И да сохранять (может еще и перебрасывать?) "переменную com" между сервером и клиентом (в курсе что это могут быть разные компы за 20 тысяч км) это гыгыгы.
9 Garykom
 
гуру
23.12.19
17:47
(7) Второй этап, последних старичков 77 (или недо программистов) вынужденно на 8-ку УФ
10 Mort
 
23.12.19
17:48
(7) Ну да, надо обернуть в коллекцию. А ощущение что 2008-й скорее от того, что все ещё юзают com ))
11 H A D G E H O G s
 
23.12.19
17:49
(10) И правильно деляют
12 Garykom
 
гуру
23.12.19
17:50
1. на другой базе поднимается веб-сервис
2. из одной базы обращаемся в сервис второй с запросами и получаем данные
3. с помощью 1 и 2 делаем все что надо
13 Rovan
 
гуру
23.12.19
17:50
COM подключение можно делать с клиента !
14 dka80
 
23.12.19
17:50
(10) предлагаешь под каждый чих писать вэб-сервис?
15 Garykom
 
гуру
23.12.19
17:51
(13) Угу с веб-клиента с планшета на iOS ))
16 Garykom
 
гуру
23.12.19
17:52
17 Mort
 
23.12.19
17:52
(14) Ну если мы решили юзать базу вдоль и поперек со стороны, можно довольно фривольный веб-сервис сделать. Например, принимающий текст запроса.
18 dka80
 
23.12.19
17:54
(16) трижды ха. Проходили. Много чего выдернуть нельзя, либо люто не в том виде. В частности, на ЗУПе пытался нужные разрезы получать. Так себе удовольствие
19 Garykom
 
гуру
23.12.19
17:55
(17) У меня была мысля сделать чтобы принимал произвольные тексты запросов не только с ВЫБРАТЬ но и ВСТАВИТЬ и даже ОБНОВИТЬ
20 Aswed
 
23.12.19
17:55
(12) Ага. Буду я ковырять типовую бухию что бы там вебсервис делать для простого сравнения.
21 dka80
 
23.12.19
17:55
(17) про фривольный текст запроса была милая статья... не помню, то ли на инфостарте, то ли на хабре - та еще дырень в безопасности
22 Garykom
 
гуру
23.12.19
17:55
(18) Можно выдернуть все, вопрос удобства.
Если неудобно то да свой сервис пишется и вперед.
23 lodger
 
23.12.19
17:55
(20) сделай расширение.
24 Aswed
 
23.12.19
17:56
(23) Думал над этим. Но операция эта по сути разовая. Там синхронизировать надо пару справочников. Дольше расширение ковырять буду.
25 dka80
 
23.12.19
17:56
(23) ага. На обычных формах в режиме совместимости 8.2
26 lodger
 
23.12.19
17:57
(24) тогда проще загрузка\выгрузка объектов через xml\json
27 lodger
 
23.12.19
17:57
(25) так бухия типовая ж.
28 dka80
 
23.12.19
17:57
(24) синхронизировать пару справочников - так может КД быстрее?
29 Garykom
 
гуру
23.12.19
17:57
(20) Так и скажи:
Компетенций не хватает, буду несколько дней говнокодить простейшую задачу за счет работодателя.
Вместо того чтобы нанять спецы уровнем повыше который справится за несколько часов.
Что для заказчика выгодней даже с учетом что спец берет не по 2 тыщщи в день а 4 за час.
30 Aswed
 
23.12.19
17:57
(26) Тоже думаю над этим)
31 Cyberhawk
 
23.12.19
17:58
(4) Уже вроде не работает
32 Aswed
 
23.12.19
17:59
(28) В типовой загрузке хмл есть возможность выбрать соответствия? Я ни натыкался на такое
33 Garykom
 
гуру
23.12.19
17:59
(30) Издеваешься? Веб-сервис аля REST это и есть обмен JSON файликами только по HTTP
34 Aswed
 
23.12.19
18:00
(29) Да да. Именно поговнокодю. Тебя же тут рядом нет. Так бы ОБЯЗАТЕЛЬНО тебя наняли.
Как так, судья последней инстанции сказал "ФИ"! Надо срочно его нанять на работу.
35 Cyberhawk
 
23.12.19
18:00
Кстати если базу завернуть в автономный сервер, то сторонний веб-сервер не нужен
36 Сергиус
 
23.12.19
18:20
(23)Если задача разовая, в чем проблема сделать ее через толстого клиента?
37 Mort
 
23.12.19
18:27
Все задачи разовые, а потом хоп и база внезапно неприятно пахнет.
38 Kigo_Kigo
 
23.12.19
19:13
(34) Да ты почитаей его и еще тут пара советчиков, в каждо второй теме он предлагает зарвернуть веб сервер/сервис и его уюзать, я ему уже не однократно говорил - что люди не хотят/не умеют с этим работать, все бестолку, носится с ним из ветку в ветку как куритца с яйцом, выше уже подсказали - запустись под толстым и делай что хошь на клиенте
39 palsergeich
 
23.12.19
20:00
(38) "люди не хотят/не умеют с этим работать" - Де факто уметь с этим работать уже стандарт.
40 palsergeich
 
23.12.19
20:00
(39) Тем более чтоэто ИМХО на порядок проще com
41 Провинциальный 1сник
 
23.12.19
20:06
(40) Да ладно! Простая объектная модель COM, позволяющая чувствовать себя во внешней базе "как дома" (почти, COM к сожалению это не нативный доступ, а обертка через микрософтовские типы). И клиент-серверное событийное взаимодействие веб-сервисов. Веб-сервисы реально сложнее, их нужно программировать "с двух сторон".
42 Garykom
 
гуру
23.12.19
20:29
(41) Кто мешает написать универсальный сервис с Выполнить/Вычислить и передавать код для выполнения, назад отправляя результат?
43 lodger
 
23.12.19
20:33
(42) про сесурность такого "очка в локалку" уже поминали выше.
44 Garykom
 
гуру
23.12.19
20:37
(43) Голой попой в инет понятно дело выставлять низзя
45 Aswed
 
23.12.19
22:12
(38) Умею я сним работать и работаю) У меня с десяток сервисов весит и обменов на нём. Но я не вижу смысла заморачиваться для разовой поерации в типовой конфе. Но Гаркома есть два мнения, его и не правильное. Поэтому мох)
46 Aswed
 
23.12.19
22:13
И харе тут уже сраться. Сделал уже всё.
47 Aswed
 
23.12.19
22:15
(41) Это да. Самый главный и удобный плюс. Подрубился и шпаришь как в базе источнике.
А для такой простой задачки в 100 строк мастерить вебсервис это тоже самое что использовать ядерный реактор для кипячения кружки воды.
ИМХО А то Гарком опять возбудится)
48 hhhh
 
24.12.19
01:13
(47) а в чем там мастерство? Это же просто войти в конфигуратор и нажать кнопку "опубликовать базу". Никакого там особого мастерства не нужно.
49 palsergeich
 
24.12.19
01:33
(48) суть в том что для разовой операции может com навоять и быстрее будет.
А с публикацией может быть внутриконтроная бюрократия
50 hhhh
 
24.12.19
01:38
(49) но если вебсервис только внутри локальной сети, без выхода в глобальный интернет, вроде бюрократия это не запретит? Поднять вебсервер на локальном IP?
51 palsergeich
 
24.12.19
02:24
(50) были проблемы сделать чисто локальный ресурс.
52 palsergeich
 
24.12.19
02:24
(51) организационного характера имею ввиду
53 Garykom
 
гуру
24.12.19
02:49
(51) (52) Я конечно извиняюсь но кто/что мешает поднять и опубликовать веб-сервер не на сервере где 1С а на клиенте откуда поднимается COM соединение?
Поставить веб-сервисы из дистра 1С, поставить апач, запустить конфигуратор и опубликовать базу.

Или там голимый RDP был?
Так один фиг права на COM соединение и на Модуль расширения веб-сервера одинаковы.
По сути веб-сервер и работает в рамках своего COM соединения к базе.
54 Garykom
 
гуру
24.12.19
02:50
(53)+ Точнее
*в рамках "своего COM соединения" к базе.