Имя: Пароль:
1C
1С v8
Отладчик по F11 не заходит в процедуру
0 Mikhail Volkov
 
06.09.16
13:39
Не заходит по F11 в УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(). Уже внутри нее поставил точку останова - все равно мимо!? Может что-то перехватывает ее действие, как посмотреть?
1 Fragster
 
гуру
06.09.16
13:40
например отладка на сервере не включена
2 zak555
 
06.09.16
13:41
потому что отказался от ка20 -)
3 Mikhail Volkov
 
06.09.16
13:53
(2) УПП Птицефабрика РАРУС
(1) Читал v8: КА 1.1 Отладчик не попадает в процедуру. Только ребут сервака?
4 Про100Филя
 
06.09.16
13:55
(3) да. и запуск с ключем отладки
5 Мыш
 
06.09.16
13:58
(0) Может фоном выполняется?
6 romix
 
06.09.16
14:00
(3) Надо перезапустить 1С скорее всего, у меня тоже часто слетает отладчик на сервере.
7 romix
 
06.09.16
14:01
А или да, с ключом отладки сервер запустить, если раньше не работало. http://www.k3-67.ru/knowledge_base/47
8 Mikhail Volkov
 
06.09.16
14:04
(4) в 1C:Enterprise 8.2 Server Agent  -debug прописан. В одни процедуры заходит, в ДвижениеПартийТоваров() - нет.
(5) Проведение документа интерактивное.
(6) Только сервер 1С? Дык, все равно все вылетят из 1С...
9 Radkt
 
06.09.16
14:06
А должно заходить? ни какого отложенного проведения, нет?
10 Mikhail Volkov
 
06.09.16
14:26
(9) Вроде нет, ошибки пишет сразу:
Бухгалтерский учет. Документ Перемещение товаров С0000017616 от 02.07.2016 10:40:00, табличная часть "Товары"
Не списано по партиям 8 285 кг товара Птица, х-ка: Молодняк бройлерный 1-43, серия: 23.05.2016 20, счета учета 11, 004.01, со склада: 20 Корпус

В процедуре СообщитьОНехваткеПартии() тоже ставил точку останова, и тоже мимо!? Это УПП Птицефабрика РАРУС, может что-то как-то перехватывается выполнение УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(), как посмотреть?
11 Mikhail Volkov
 
06.09.16
18:50
Рабочую базу ребутнуть не дали, но есть старенькая локальная копия с документами дающие те же ошибки при проведении. В этой копии все тоже самое: ставлю точку останова на УправлениеЗапасамиПартионныйУчет.СообщитьОНехваткеПартииРегл() (вызывается из УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров()), которая мне пишет ошибку, и тоже мимо, не останавливается на ней!? А ошибка пишется.

Это УПП Птицефабрика РАРУС, а у РАРУС много разных сюрпризов... по Альфе-Авто и УАТ сталкивался - РАРУС применяют защищенные функции, которые находятся в "черном ящике" - прошиты в DLL. Сдается, что и здесь вместо типовой процедуры УПП ДвижениеПартийТоваров() извлекается нечто свое из "черного ящика" РАРУС? Это лишь мое предположение. Есть другие варианты версий?
12 Mikhail Volkov
 
07.09.16
17:48
Обычно при замере производительности показывается что внутри вызывается. А тут тоже мимо, как будь то из ДвижениеПартийТоваров() ничего не вызывается: http://s017.radikal.ru/i432/1609/21/65361adc4a6d.jpg
Похоже, что исполнение типовой из УПП ДвижениеПартийТоваров() перехватывает другая РАРУС процедура. Где ее искать?
13 Метранпаж
 
07.09.16
17:49
А если включить остановку по ошибке?
14 anatoly
 
07.09.16
17:55
(12) может в подписке какой?
15 Mankubus
 
07.09.16
18:03
(12) в этой процедуре написать ошибку которая прервет выполнение и посмотреть. может процедура не вызывается вообще
16 Mikhail Volkov
 
07.09.16
18:07
(13) Нет ошибок, все прекрасно выполняется, но не понятно как!?
(14) Как ее вычислить?
(15) Так и есть, но кто перехватывает ее выполнение, как найти?
17 shuhard
 
07.09.16
18:17
(12)[ Где ее искать?]
в закрытом модуле
18 Фрэнки
 
07.09.16
18:24
а может быть сделать замер производительности...

там всю статистику, все вызовы отладчик сам опишет, а дальше уже будет понятней, где исполняемый код был, а где не было
19 Mikhail Volkov
 
08.09.16
05:17
(18) Сделал, в (12)
(17) Они есть, но только для пользователей с ролью "Пользователь УПФ". Я ее не использую, подомною даже проверка ключа РАРУС не запускается.
20 Antony8x
 
08.09.16
05:24
(0) может сервак не дебадженный?
21 hhhh
 
08.09.16
05:51
(19) что-то вы уж очень дремучи. Все важные функции в рарусе закрыты, текстов процедур нет. Читайте (2) до полного просветления.
22 Mikhail Volkov
 
09.09.16
03:23
(21) Ну не все, а наиболее трудоемкие в исполнении (как правило "самое вкусненькое") - для них есть смысл их код компилировать, оптимизировать, и размещать в dll. С такими "защищенными функциями" встречался в Альфа-Авто, УАТ... и не только у РАРУС. Но там все ясно, из тексты в модулях конфигурации отсутствуют, только их вызовы. А вот такой случай впервые, вроде вызываемая процедура есть в модуле. А исполняется другая. Как выявить эти "лживые" процедуры?
23 hhhh
 
09.09.16
05:25
в модуле видна стандартная функция из УПП. Она и есть лживая. А настоящая из птицефабрики находится в dll.
24 DAVI
 
09.09.16
07:29
там в свойствах этого общего модуля стоит поставьте галочку клиент. Проверьте отладчиком ошибку и потом уберите галочку
25 Mikhail Volkov
 
10.09.16
12:45
(24) Опаньки, а ведь точно, поставил на Клиент галочку, теперь заходит в УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров()! Это так и должно быть, в чисто серверные модули отладчик заходить не должен?
26 Фрэнки
 
10.09.16
15:57
(25) ну почему не должен? отладка на сервере должна быть разрешена и это устанавливается соотв ключом при запуске серверной 1С
27 Mikhail Volkov
 
10.09.16
16:00
Правда при этом возникает Ошибка при вызове метода контекста по причине: Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода ОпределитьСоставКолонокТаблицаСписанныхПартийБух(СтруктураПараметров, СписокКодовОпераций,СтруктураКолонокТаблицыСписания)!?
28 Mikhail Volkov
 
10.09.16
16:02
(26) > отладка на сервере должна быть разрешена и это устанавливается соотв ключом при запуске серверной 1С
Можно подробнее, каким ключом?
29 Фрэнки
 
10.09.16
16:09
ну куда уж подробней, если все подробности я сам у яндекса обычно спрашиваю. Вот что он мне ответил

Запрос: разрешить отладку на сервере 1с 8.3
Ответ: v8: Включение отладки на стороне сервера 1С 8.3.4.437
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший