Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Создание набора записей регистра бухгаллтерии
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
drug_com
Добрый день, коллеги.
Я очень начинающий программист, поэтому заранее прошу прощения за возможные вопросы по азам.
Вопрос по обычным формам.
Не получается создать набор записей регистра бухгалтерии:
 нРегистрДвижения = РегистрыБухгалтерии[РегБух].СоздатьНаборЗаписей(); 
 нРегистрДвижения.Отбор.Регистратор.Установить(Док,Истина);
 нРегистрДвижения.Прочитать();

1я строка) Результат правой части верный =
РегистрБухгалтерииНаборЗаписей.Управленческий
, это значение пытаемся присвоить переменной ...
Но значение переменной после этой строки - "неопределено" с типом "неопределенно".
2я строка) Результат, естественно, тоже ошибочный - ошибка: "Значение не является значением объектного типа (Отбор)".
При этом, значение документа (Док) верное - План продаж 00000000006 от 28.11.2017 13:03:49.
(Для документа "План продаж" установлена галка, что он может делать записи в рег.бух. "Управленческий", а соответсственно в рег.бух. в списке возможных регистраторов появился "План продаж")
Код был написан, не мной, а возможно опытными программистами.
Подскажите, что не так и куда смотреть, если достаточно информации?
Видел необходимо зарегистрироваться для просмотра ссылки, что отбор по регистратору делают другим методом:
НаборЗаписей.Отбор.Регистратор.Значение = Выборка.Регистратор;

Но как правильно не знаю.
Если вызывает удивление документ "План продаж" с проводками в рег.бух.:
Цитата
Стандартные механизмы моей конфигурации (надстройка КУБиК) предполагают возможность в пользовательском режиме настройки движений любого документа в любой регистр.
План продаж, в моем случае, долдлжен делать проводки со значением в поле сценарий "Плановый", что позволит формировать плановый баланс, а планы сравнивать с фактом.
У меня в управленческом регистре бухгалитерии есть поле - сценарий.
Vofka
То есть после выполнения этой строчки

нРегистрДвижения = РегистрыБухгалтерии[РегБух].СоздатьНаборЗаписей();


нРегистрДвижения = Неопределено?
drug_com
Vofka @ Сегодня, 9:31 необходимо зарегистрироваться для просмотра ссылки
Да
Vofka
Телепатирую, что имя переменной в первой строке и в последующих разное. Скопируйте имя переменной из первой строки в последующие. Не перепечатать, а именно скопировать и вставить.
drug_com
Vofka @ Сегодня, 10:25 необходимо зарегистрироваться для просмотра ссылки ,
Не помогло: sad.gif
необходимо зарегистрироваться для просмотра ссылки
09000000.gif
Vofka
А если имя переменной поменять на какое-то другое?

НаборЗаписей = РегистрыБухгалтерии[РегБух].СоздатьНаборЗаписей(); 
НаборЗаписей.Отбор.Регистратор.Установить(Док, Истина);
...
drug_com
Vofka @ Сегодня, 11:12 необходимо зарегистрироваться для просмотра ссылки ,
необходимо зарегистрироваться для просмотра ссылки
upset.gif
До момента:
НаборищеЗаписищей.Прочитать();
, значение переменной уже должно иметь хотя бы тип значения?
Bernet
drug_com @ Сегодня, 11:55 необходимо зарегистрироваться для просмотра ссылки ,
Сделайте ещё скрин в отладке, чему равен параметр "РегБух"
drug_com
Bernet @ Сегодня, 12:21 необходимо зарегистрироваться для просмотра ссылки ,
КУБиК_Управленческий - строка
Bernet
drug_com @ Сегодня, 12:24 необходимо зарегистрироваться для просмотра ссылки ,
Ну вот необходимо зарегистрироваться для просмотра ссылки - работает же, должно и у вас работать - значит 100% что-то не так либо с именем регистра либо с переменными
drug_com
Bernet @ Сегодня, 12:37 необходимо зарегистрироваться для просмотра ссылки ,
У меня тоже работает "наскоряк накиданное".
Но то, что у меня, все равно не работает ...
Не могу понять, куда смотреть дальше ...
upset.gif
drug_com
На 256й раз дошло ... 32542620.gif
Логично, что результат выражения "неопределено" - т.к. на одну строчку выше не выполняется условие, и "проблемная" часть кода вообще не выполнялась! 19000000.gif
Хотя ниже по коду, за этим условием, пытаемся взять значение переменной и проверить в нем "Количество".

Господа, Vofka, Bernet, благодарен, Вам за участие, натолкнули 05071.gif на мысль сходить выше по коду ...
Т.к. тема не несет смысловой нагрузки для будущих поколений, я не против, чтобы админы её удалили.
А мне предстаит новый этап изучения своей конфигурации ...
Что там за условие, и откуда беруться значения для его невыполнения? Или зачем ниже по коду проверять количество в неопределенном значении?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.