Имя: Пароль:
1C
1С v8
Какая связь между внешним и внутренним отчетом?
0 ChAlex
 
04.10.11
13:06
И так ситуация: в конфигурации есть внутренний отчет, который первоначально отлаживал как внешний и потом закинут в конфигурацию из него. Оба отчета имеют одинаковое название. В конфигурации отчет не совсем верный (еще не до конца отлаженный) - ну так сказать и фиг с ним. Отлаживаю внешний отчет. Что-то там меняю добавляю, удаляю. Запускаю на выполнение внешний отчет и ...!! и отчет выдает ошибку на несуществующие методы из модуля внутреннего отчета!!! Но блин! КАКИМ боком внешний отчет должен лезть во внутренний!! Сразу: основной реквизит формы внутреннего отчета ОтчетОбъект.ВыполнениеЗаказов, а внешнего ВнешнийОтчет.ВыполнениеЗаказов. Так что трабла с тем, что вроде ссылка на объект в форме не та - отпадает!
1 DrShad
 
04.10.11
13:08
кэш почисти
2 Шапокляк
 
04.10.11
13:08
Настройки под одним и тем же именем сохраняются.
3 Ненавижу 1С
 
гуру
04.10.11
13:08
запутался ты в них, посмотри правильные пути
да и сохрани внешний отчет после изменения
4 ChAlex
 
04.10.11
13:21
(2) С настройками оно может быть, а насчет кэша (1) - отчеты делалиль вчера. Только сегодня утром снес вообще 1С, поудалял все ссылки на нее на винте и установил заново (до этого никак не хотел отладчик запускаться). (3) - да путаться в чем? Я даже отчет в конфигурации переименовал - один хрен. Ощущение такое, что форма пытается открыться одна (внешнего отчета), но к ней как-то привернуты список процедур и листинг из внутреннего отчета, но проверяется этот листинг со скомпелированных внешним отчетом. Вообщем полный бред
5 ChAlex
 
04.10.11
13:23
Кстати а настройки то тоже каким боком могут влиять к тексту модуля формы?!
6 sergeante
 
04.10.11
13:23
(0) посмотри основной реквизит внешнего отчета!
7 Начинающий Программер
 
04.10.11
13:24
Что-то Вы недоговариваете, батенька:-)
8 sergeante
 
04.10.11
13:24
+(6) точнее основной реквизит формы внешнего отчета
9 Шапокляк
 
04.10.11
13:25
ПриОткрытии восстанавливаются настройки, имя которых хранится в текстовой строке страшного вида. При закрытии они сохраняются. Во внешней обработке переименуйте имя настройки и будет счастье.
10 sergeante
 
04.10.11
13:27
 



(0) +(6) основной реквизит формы внешн. отчета ссылается не на внешний отчет, а на внутренний ОтчетОбъект конфигурации




 
11 Шапокляк
 
04.10.11
13:30
Как вариант-переименуйте внешний отчет.
12 sergeante
 
04.10.11
13:31
(11) как вариант надо всётаки прописать корректный тип основого реквизита
13 ChAlex
 
04.10.11
13:31
(6) я ж их сразу написал - во внутреннем указан на внутренний отчет, во внешнем - на внешний. Привожу копированием из 1С: для внешнего отчета ВнешнийОтчет.ВыполнениеЗаказов443 (из ветки дерева объектов внешний отчет, если развернуть), во внутреннем отчете ОтчетОбъект.Вы____полнениеЗаказов111 (из ветки дерева объектов отчеты). Переименовал и внешний и внутренний отчет, переименовал переменную представления варианта настроек в НаименованиеТекущегоВариантаВне - те же грабли
14 sergeante
 
04.10.11
13:35
(13)грохни внутренний отчот (не переименуй - грохни)
15 ChAlex
 
04.10.11
13:36
Убрал вообще переменную представления варианта настроек - та же ж: {Форма.ФормаОтчета.Форма(20,8)}: Процедура или функция с указанным именем не определена (ПолучитьСхему)
   Схема=<<?>>ПолучитьСхему();

Этого листинга во внешнем отчете нет, но он есть во внутреннем, и во внутреннем есть функция ПолучитьСхему()!
16 ChAlex
 
04.10.11
13:37
(14) - да дежурный метод и так ясен. Тут уже вопрос принципа. Можно даже просто текст процедуры внешнего отчета закинуть во внутренний.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший