|
Обойти модуль объекта... | ☑ | ||
---|---|---|---|---|
0
Darhon
20.03.19
✎
00:49
|
Здравствуйте. Проблема в следующем. Есть веб-сервис он по поступлении некоторого пакета данных вносит изменения в документ и проводит его. При проведении возникает ошибка:
Переменная не определена (РежимДиалогаВопрос) Проблема в том, что модуль не содержит исходных кодов. И я даже не знаю что делать. Нужно как-то обойти этот функционал. Если подскажете спасибо. |
|||
1
PR
20.03.19
✎
01:24
|
Обратиться к разработчику с вопросом "Многоуважаемая компания имярек, какого куя..."
|
|||
2
PR
20.03.19
✎
01:25
|
+(1) Закончить конечно же как-то так
Надеюсь на скорейшее решение моего вопроса, иначе вынужден буду обратиться напрямую к вендору с этим же вопросом С уважением, бла бла бла |
|||
3
Лодырь
20.03.19
✎
05:29
|
(0) А запись документа в режиме обмена данными прокатывает?
|
|||
4
PR
20.03.19
✎
11:08
|
(3) Причем здесь это?
У него ошибка компиляции модуля по ходу |
|||
5
Лодырь
20.03.19
✎
11:10
|
(4) А вы знаете в каком модуле происходит эта ошибка?
|
|||
6
PR
20.03.19
✎
11:11
|
(5) Нет, просто я знаю 1С
|
|||
7
Лодырь
20.03.19
✎
11:11
|
(6) А, ну да, ну да.
|
|||
8
PR
20.03.19
✎
11:17
|
(7) Рукалицо
Судя по-всему в обычном режиме у него все работает, а ругается именно при работе веб-сервиса Скорее всего у него толстый клиент В режиме толстого клиента РежимДиалогаВопрос не ругается А в режиме веб-сервиса ругается Я с таким сталкивался, поэтому знаю А ты сталкивался? Если сталкивался, то что тут бурно сарказмируешь? Если нет, то опять же, зачем лишний раз рот не по делу раскрывать? |
|||
9
Мыш
20.03.19
✎
11:17
|
Разработчики скрытого кода любят задавать вопросы серверу, а сервер не хочет отвечать:
РежимДиалогаВопрос Доступность: Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент |
|||
10
Ник080808
20.03.19
✎
11:20
|
(8) (9) +100500. В модуле клиентская процедура, которую не видит вебсервер. Вариант не проводить веб сервисом, а записывать только изменения и пихать в регистр сведений из которого регламентным заданием выбирать документы и проводить. Костыль костыльный, но если нет доступа к модулю, то как вариант.
|
|||
11
Вафель
20.03.19
✎
11:24
|
(10) рег.задание, однако, тоже на сервере
|
|||
12
Ник080808
20.03.19
✎
11:31
|
(11) ну ок: регзадание может запускать приложение 1с) от служебного пользователя который при старте проводит документы и закрывается)
|
|||
13
Лодырь
20.03.19
✎
11:35
|
(8) Сколько эмоций.
Вынести в общий модуль что-нибудь в стиле: [code] Процедура ПроцедураСВопросом() ЭКспорт РежимДиалога = РежимДиалогаВопрос.ДаНет; Сообщить("PR неправ"); КонецПроцедуры [/code] И получите работу в толстом клиенте и не работу в тонком. В при этом вполне можно будет обойти ошибку через режим обмена данными. Попробовать то можно. Смысл делать предположение, если можно его проверить и получить утверждение. |
|||
14
Ник080808
20.03.19
✎
11:38
|
(13) "В при этом вполне можно будет обойти ошибку через режим обмена данными." - ошибка выпадает при компиляции модуля объекта, так что "Загрузка = истина" не проканает. Он валится скорее всего при попытке получитьобъект()
|
|||
15
Лодырь
20.03.19
✎
11:41
|
(14) И вам напишу. Мы не знаем в каком модуле ошибка. Да скорее всего в модуле объекта. Но вдруг?
|
|||
16
Garykom
гуру
20.03.19
✎
11:46
|
(0) Сделайте чтобы веб-сервис создавал новые объекты в которых записано куда и какие изменения вносить.
Затем юзер (или робот) запускает обработку, перебирает объекты-задания от сервиса и правит документы как надо с проведением их. |
|||
17
Garykom
гуру
20.03.19
✎
11:48
|
(1) Ммм, неа. Не пойду я к вам устраиваться на удаленку.
|
|||
18
Ник080808
20.03.19
✎
11:49
|
(15) справедливо, но тогда с автора (0) полный текст ошибки что оно выдает. Там должно быть указано в тексте ошибки модуль документа или общий модуль ругается.
|
|||
19
Garykom
гуру
20.03.19
✎
11:50
|
(16)+ Хотя должен признать если там перед/при проведении документа вопрос задается и ожидается ответ то это уже пи..ц
|
|||
20
mistеr
20.03.19
✎
11:55
|
(0) Проблема в том, что документ не поддерживает неинтерактивное проведение (задает вопросы при проведении). Разработчик модуля не позаботился об этом. Кроме того, это нарушение стандартов разработки.
Варианты решения. 1. Договориться с разработчиком о доработке. 2. Декомпилировать модуль и переписать как надо (нарушение лицензии? Не уверен на 100%). 3. Создать новый документ, который двигает нужные регистры, и пользоваться им для веб сервиса. Я бы пробовал сначала 1, потом 3, потом 2. |
|||
21
PR
20.03.19
✎
12:02
|
(13) Да просто не понимаю, когда кто-то не в теме, но тоже очень хочет поспорить
Насчет вынесения в общий модуль ты просто еще раз подтвердил, что ты не в теме Я же говорю, ошибка выдается в результате инициализации веб-сервисом модуля объекта Если же ошибочный код будет в общем модуле, а не в модуле объекта, то как минимум на этапе инициализации объекта ошибки не будет В дальнейшем, при вызове общего модуля, возможно будет ошибка, да. И что? В случае ТС я просто не могу придумать пример, кроме толстого клиента и ошибки в модуле объекта, при которой все будет хорошо на клиенте и хреново в веб-сервисе Придумаешь такой вариант, напиши А пока звучит как предложение попинать шины и протереть стекла Ну да, если по-другому не умеешь, то можно и так, согласен |
|||
22
PR
20.03.19
✎
12:05
|
(15) — Здравствуйте, у меня программа выдает ошибку деления на ноль при проведении документа, что мне делать?
— Попробуйте выключить и включить компьютер ну или обновить платформу на последнюю, еще можно попробовать почистить кеш — А это поможет? — Не знаю, но вдруг поможет |
|||
23
PR
20.03.19
✎
12:07
|
(17) К разработчикам, которые забивают болт на синтаксический контроль модулей, после чего еще и исключают модули из поставки, надо обращаться именно так
Понятно, что исключенный модуль вроде как можно восстановить, но какого хрена я должен заниматься этим онанизмом, не? |
|||
24
Garykom
гуру
20.03.19
✎
12:08
|
(22) Есть не 0 вероятность что в процессе/после этих действий юзер более на линию техподдержки не позвонит = задача выполнена.
Например комп/система упадет или юзер сам догадается в чем проблема и сам исправит. |
|||
25
Garykom
гуру
20.03.19
✎
12:10
|
(23) Иногда лучше решить очень сложную проблему клиента не посылая его "к разработчику".
|
|||
26
PR
20.03.19
✎
12:14
|
(20) Еще раз, сто к одному, что проблема не в том, что документ не поддерживает неинтерактивное проведение (задает вопросы при проведении), а в том, что в модуле объекта синтаксическая ошибка при компиляции именно в режиме работы веб-сервиса, а в режиме толстого клиента этой ошибки нет
|
|||
27
PR
20.03.19
✎
12:15
|
(25) Darhon клиент?
|
|||
28
Garykom
гуру
20.03.19
✎
12:20
|
(27) Потенциальный
|
|||
29
Garykom
гуру
20.03.19
✎
12:23
|
Стандартный пример когда фра не может или посылает а фри предлагает решение.
Иногда фра не зная как лупит ценник побольше на авось, а уже потом пытается спихнуть проблему на своих сотрудников. |
|||
30
PR
20.03.19
✎
12:27
|
(29) Что за бред ты тулишь?
|
|||
31
palsergeich
20.03.19
✎
12:36
|
По текущей методологии в модуле объекта не должно быть инструментов интерактивной работы, даже там, где их поместить можно - как ВВашем случае с ОФ.
Начать надо с того, что бы интерактивный функционал вынести в интерактивные механизмы, а именно в форму. |
|||
32
palsergeich
20.03.19
✎
12:39
|
Конкретно в этом примере классический случай удержания транзакции до интерактивного действия пользователей, когда остальные могут страдать.
Не надо так |
|||
33
PR
20.03.19
✎
12:40
|
(32) Да это может быть где угодно в модуле, даже в ни разу нигде не вызываемой процедуре или функции
|
|||
34
Garykom
гуру
20.03.19
✎
12:41
|
Интересный вопрос а расширения нормально перекрывают модули без исходных кодов?
|
|||
35
mistеr
20.03.19
✎
12:41
|
(26) Это и называется "не поддерживает". Просто проявляется по-разному: в толстом - задает вопрос, в других - валится.
|
|||
36
Garykom
гуру
20.03.19
✎
12:42
|
(34)+ Это к тому чтобы не трогать конфу закрытую, просто получить код что там в закрытом модуле и повторить его правильно.
|
|||
37
Garykom
гуру
20.03.19
✎
12:43
|
(30) Вот поэтому и не пойду к вам.
|
|||
38
mistеr
20.03.19
✎
12:50
|
(26) Разве модуль без исходного текста уже не скомпилирован во всех режимах?
|
|||
39
palsergeich
20.03.19
✎
12:51
|
(34) нормально, я проверял
|
|||
40
Garykom
гуру
20.03.19
✎
12:52
|
(39) ОК тогда проблема ТС решается, не так и сложно
|
|||
41
PR
20.03.19
✎
13:38
|
(35) Может оказаться и так, что программное проведение вполне себе будет работать, а вот проведение в режиме веб-сервиса будет валиться с ошибкой
|
|||
42
PR
20.03.19
✎
13:39
|
(37) Да тебе вроде пока джоб-офер и не высылали
|
|||
43
PR
20.03.19
✎
13:40
|
(38) Не знаю
Но даже если и так, то что? Ошибка-то есть |
|||
44
PR
20.03.19
✎
13:42
|
(40) И как именно?
Просто взять и заменить для любых ситуаций модуль объекта своим пустым? |
|||
45
Garykom
гуру
20.03.19
✎
13:43
|
(44) Ты не в курсе как получить байт код и затем его декомпилировать?
|
|||
46
PR
20.03.19
✎
13:51
|
(45) О как
А нахрена тогда расширение? Просто исправляешь говнокод и все |
|||
47
Garykom
гуру
20.03.19
✎
13:57
|
(46) Потому что придется весь модуль тогда исправлять (вместо одной процедуры/функции) и как бы вмешательство в систему защиты вместо типового механизма от 1С.
Даже с поддержки конфу не надо снимать. |
|||
48
famnam
20.03.19
✎
13:58
|
(46) не уверен, что расширение поможет. даже если использовать Вместо. Заместить можно только процедуру,а не весь модуль. Он все равно должен скомпилироваться прежде
|
|||
49
PR
20.03.19
✎
14:00
|
(47) Смешно
Прочитай (33) |
|||
50
PR
20.03.19
✎
14:00
|
(48) Эээ..., ты точно мне?
А то я-то как раз это понимаю, в отличие от Garykom |
|||
51
famnam
20.03.19
✎
14:02
|
(50) Извини, не все прочел :)
Тогда подытожил твои замечания |
|||
52
Garykom
гуру
20.03.19
✎
14:04
|
(49) Не знаю что ты хочешь этом сказать.
Я исходил из того что у ТС документ нормально проводится пользователем через интерфейс в клиенте. |
|||
53
Garykom
гуру
20.03.19
✎
14:06
|
(51) Поставка без исходных кодов = уже скомпилировано.
|
|||
54
Cyberhawk
20.03.19
✎
14:06
|
Походу в модуле объекта "паршивый код" обернут инструкцией
#Если Клиент Тогда ... #КонецЕсли |
|||
55
Cyberhawk
20.03.19
✎
14:07
|
Интересно, какого исходного текста нет у автора - веб-сервиса или модуля нужного документа
|
|||
56
famnam
20.03.19
✎
14:08
|
(54) ну да, только НЕ обернут получается...
|
|||
57
Генератор
20.03.19
✎
14:21
|
Думаю у автора обычное приложение, если такие конструкции в серверно-клиентских модулях работают. Скорее всего там режим совместимости и не даст использовать расширение.
|
|||
58
Garykom
гуру
20.03.19
✎
14:25
|
(57) Ну тогда (16) если модуль без кодов не меняем.
Лично я думаю у ТС нечто вроде Альфа-Авто 4 или похожее, там с поддержкой уже никак и пошлют если обратиться насчет неработающего веб-сервиса в дописанной конфе. |
|||
59
PR
20.03.19
✎
14:30
|
(52) И чо и чо?
Еще раз, это нормально, когда в толстом клиенте все нормально работает, а вот в веб-сервисе будут синтаксические ошибки компиляции модуля, такое вполне себе может быть Изучи матчасть что ли, а то я уже утомился безрезультатно повторять тебе одно и то же |
|||
60
PR
20.03.19
✎
14:31
|
(54) Нет, потому что в этом случае веб-сервис бы не ругался
Ты думаешь, когда что-то пишешь? |
|||
61
Garykom
гуру
20.03.19
✎
14:34
|
(59) Мы уже неоднократно выясняли насчет знания матчасти и теории в целом.
И да не словами говори ты продемонстрируй на конфе "в веб-сервисе будут синтаксические ошибки компиляции модуля" |
|||
62
Garykom
гуру
20.03.19
✎
14:35
|
(61) Веб-сервис = обычное ВнешнееСоединение
|
|||
63
PR
20.03.19
✎
14:41
|
(61) Рукалицо
Добавь в модуль документа процедуру
Этого будет достаточно, чтобы толстый клиент работал, а веб-сервис нет |
|||
64
PR
20.03.19
✎
14:41
|
(62) LOL
Это не так Ладно, заканчиваю разговор, ты я смотрю, с темой не сталкивался, но очень хочешь что-нибудь сказать |
|||
65
Garykom
гуру
20.03.19
✎
14:56
|
(63) (64) А теперь скажи в какой момент происходит компиляция в случае поставки без исходных кодов?
Еще раз повторю, ты сначала прочитай (52) а затем своё (59) и уже затем слезай с темы (64) Если расширение работает (режим совместимости) то можно перекрыть только кривой код. Что ты хотел своими заумствованиями с самого начала темы сказать типа (0) где "Обратиться к разработчику с вопросом "Многоуважаемая компания имярек, какого куя..."" Я лично не понимаю. Уважаемая компания писала конфу году так в 2007-2010, если не раньше. И даже не подозревала что когда то в нее некто будет засовывать веб-сервисы. |
|||
66
Cyberhawk
20.03.19
✎
16:08
|
(60) Вкралась ошибка - забыл частицу "не". Но что-то ты агрессивно как-то придираешься )
|
|||
67
Сияющий в темноте
20.03.19
✎
16:43
|
Модули то скомпиллированы,но в них имеются внешни5 ссылки,которые восстанавливаются перед запуском модуля.просто,система не видит режим диалога вопрос.
можно сделать бяку,а именно,в модуле внешнего соединения определить функцию РежимДиалогаВопрос на сервере ну или в любом серверном можуле с галочкой глобальный. |
|||
68
Garykom
гуру
20.03.19
✎
16:57
|
(67) Прикольно, жаль что может не помочь, надо знать что там дальше вылезет.
|
|||
69
Serg_1960
20.03.19
✎
17:17
|
А следующей строкой вопрос юзверу вылезет :)
|
|||
70
Garykom
гуру
20.03.19
✎
17:25
|
(69) Переопределить функцию "Вопрос(..)" ?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |