![]() |
|
v7: Кусок кода обработки стандартной свертки. Мне кажется есть ошибка | ☑ | ||
---|---|---|---|---|
0
never_sleep
13.05.13
✎
14:28
|
Большое горе вынудило разбираться в коде стандартной свертки базы. Углубился пока недалеко. Но наткнулся на, как мне кажется неработающий (или правильнее сказать неправильно работающий) кусок кода.
(Сразу скажу я что в 1С новичок возможно задам глупый вопрос) Процедура ПодготовкаСпискаСсылок(СсылкиНаДокументы) Перем КритичныеЭлементы; СсылкиНаДокументы.УдалитьСтроки(); // Цикл просмотра "КОНСТАНТ" Для т = 1 По Метаданные.Константа() Цикл Состояние("Контроль ссылок: "+" анализ константы "+Метаданные.Константа(т).Идентификатор); Если Метаданные.Константа(т).Тип = "Документ" Тогда ИдКонст = Метаданные.Константа(т).Идентификатор; Если Метаданные.Константа(т).Периодический = 1 Тогда ЗначКонст = СоздатьОбъект("Периодический"); ЗначКонст.ВыбратьЗначения(); ****** Вот здесь как мне кажется было пропущен ЗначКонст.ИспользоватьОбъект(Метаданные.Константа(т)); ****** А её нет. И как тогда дальше открывается выборка в ЗначКонст ??? Пока ЗначКонст.ПолучитьЗначение() = 1 Цикл Если (ЗначКонст.Значение.Выбран() = 1) и (ЗначКонст.Значение.ДатаДок <= ДатаСвертки) Тогда // дополняем таблицу ссылок СсылкиНаДокументы.НоваяСтрока(); СсылкиНаДокументы.ДокументИБ = ЗначКонст.Значение.ТекущийДокумент(); СсылкиНаДокументы.ОбъектИБ = "Константа"; СсылкиНаДокументы.Атрибут = ИдКонст; КонецЕсли; КонецЦикла; Иначе Если (Константа.ПолучитьАтрибут(ИдКонст).Выбран() = 1) и (Константа.ПолучитьАтрибут(ИдКонст).ДатаДок <= ДатаСвертки) Тогда // дополняем таблицу ссылок СсылкиНаДокументы.НоваяСтрока(); СсылкиНаДокументы.ДокументИБ = Константа.ПолучитьАтрибут(ИдКонст).ТекущийДокумент(); СсылкиНаДокументы.ОбъектИБ = "Константа"; СсылкиНаДокументы.Атрибут = ИдКонст; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; // Цикл просмотра "КОНСТАНТ" |
|||
1
never_sleep
13.05.13
✎
14:30
|
Кривовато вышло... Можно ли отредактировать уже введенное сообщение?
|
|||
2
shuhard
13.05.13
✎
14:31
|
(0) свёртка на ИТС 1500% рабочая
|
|||
3
never_sleep
13.05.13
✎
14:51
|
(2) да я то и не спорю. но вот как она в этом месте работает ума своего не приложу. а так как мой ум касательно 1С пока короток, то и спрашиваю здесь помощи разобраться, почему же все гут.
|
|||
4
Ёпрст
гуру
13.05.13
✎
14:56
|
(3) никак не работает. В типовых конфах нет периодических констант с типом документ только и всего лишь.
|
|||
5
never_sleep
13.05.13
✎
14:57
|
Я вот что подумал. Хз как в других базах, но в нашей вроде как констант типа документ нет. Я не знаю почему, мне кажется что их вообще таких по свету мало. Поэтому и прокатывает эта приблуда.
|
|||
6
never_sleep
13.05.13
✎
14:57
|
(4) опередил.
|
|||
7
never_sleep
15.05.13
✎
07:25
|
ну так значит я правильно тут заподозрил не ладное - этот кусок получается нерабочий? Успокойте, пожалуйста, мою душеньку.
|
|||
8
Ganiev
15.05.13
✎
07:56
|
(4)++
(7)+ |
|||
9
ЧеловекДуши
15.05.13
✎
08:27
|
(7) Забей, все там нормально. Даже по коду :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |