Имя: Пароль:
1C
1С v8
Проблема с подразделением, или..
0 Economics
 
31.01.13
12:44
Доброго времени суток!

Столкнулся со странной проблемой. Недавно в справочник подразделения был добавлен новый склад. Рассчитывали что на него будет ссылаться только один вид документов, который и создавался для этого склада. В последствии оказалось, что данный склад должен использоваться и в некоторых других, уже имеющихся документах.
Проблема заключается в том, что если в форме документа указывается этот склад, то запись в регистр движения материалов не делается, хотя документ проводится.
При этом, при работе с другим документом (который создавался вместе с этим подразделением) все работает прекрасно.
Не могу понять никак, с чем это может быть связано. Подскажите хотя бы где копать. Заранее спасибо.
1 Maxus43
 
31.01.13
12:46
взрыв мозга.
"в справочник подразделения был добавлен новый склад"
где свзяь то? склад как подразделение указали? в движении материалов нужен склад, а не подразделение
2 Maxus43
 
31.01.13
12:46
или что это за конфа вобще?
3 Economics
 
31.01.13
12:50
(2) Самописная. Просто справочник назвали подразделения, ане склады.
4 Гефест
 
31.01.13
12:50
(3) И ты хочешь, чтоб здесь угадали, чего вы там понаписали?
5 Godofsin
 
31.01.13
12:51
код выкладывай
6 Economics
 
31.01.13
13:07
(4) Хочу, чтоб подсказали, из-за чего со всеми элементами справочника все работает, а с одним элементом- нет.
7 Economics
 
31.01.13
13:13
(5) ТекстЗапроса = "ВЫБРАТЬ
   |    Перемещение.Мешок,
   |    Перемещение.Номенклатура,
   |    Перемещение.Замена,
   |    Перемещение.Сотрудник КАК Сотрудник,
   |    Перемещение.Номенклатура.Родитель.Наименование КАК Группа,
   |    Перемещение.Упаковка,
   |    Перемещение.Номенклатура.Наименование КАК Наименование,
   |    Перемещение.Номенклатура.Родитель КАК Родитель,
   |    Перемещение.Номенклатура.ПолноеНаименование КАК ПолноеНаименование,
   |    Перемещение.Номенклатура.БазоваяЕдиница КАК Единица,
   |    Нормы.Норма,
   |    СУММА(Перемещение.Упаковано) КАК Упаковано,
   |    СУММА(Перемещение.Зафасовано) КАК Зафасовано,
   |    СУММА(Перемещение.Количество) КАК Напечатано
   |ИЗ
   |    Документ.НарядФасовщика.ТЧ КАК Перемещение
   |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НормыПроизводительности.СрезПоследних КАК Нормы
   |        ПО Перемещение.Номенклатура = Нормы.Номенклатура
   |ГДЕ
   |    Перемещение.Ссылка = &Ссылка
   |    И Нормы.ВидНормы = &ВидНормы
   |
   |СГРУППИРОВАТЬ ПО
   |    Перемещение.Номенклатура,
   |    Перемещение.Мешок,
   |    Перемещение.Сотрудник,
   |    Перемещение.Номенклатура.Родитель.Наименование,
   |    Перемещение.Упаковка,
   |    Перемещение.Номенклатура.Наименование,
   |    Перемещение.Номенклатура.Родитель,
   |    Перемещение.Номенклатура.ПолноеНаименование,
   |    Перемещение.Номенклатура.БазоваяЕдиница,
   |    Нормы.Норма,
   |    Перемещение.Замена
   |
   |ДЛЯ ИЗМЕНЕНИЯ
   |    Документ.НарядФасовщика"
   ;
   Запрос.Текст = ТекстЗапроса;
   Запрос.УстановитьПараметр("Ссылка", Ссылка);
   Запрос.УстановитьПараметр("ВидНормы", Перечисления.ВидыНарядов.Фасовка);
   Выборка = Запрос.Выполнить().Выбрать();

КонтролируемоеКоличество = Выборка.Зафасовано;

РасходМешков = Движения.ОстаткиМешков.ДобавитьРасход();
       РасходМешков.Период = Дата;
       РасходМешков.Подразделение = Отправитель;
       РасходМешков.Мешок = Выборка.Мешок;
       РасходМешков.Количество = НадоСписатьИзМешков;
       
       
       
       ПриходНоменклатуры = Движения.Остатки.ДобавитьПриход();
       ПриходНоменклатуры.Период = Дата;
       ПриходНоменклатуры.Подразделение = Получатель;
       ПриходНоменклатуры.Номенклатура = НоменклатураДляСписания;
       ПриходНоменклатуры.Количество = КонтролируемоеКоличество;

Движения.ОстаткиМешков.Записать();

Движения.Остатки.Записать();
8 Maxus43
 
31.01.13
13:23
Выборка = Запрос.Выполнить().Выбрать();

а где Выборка.Следующий()?

ПриходНоменклатуры.Подразделение = Получатель;

Где в запросе Получатель? или он в документе?

короче ничо не понятно из кода. Зачем запрос? где перебор записей результата запроса, и почему 1с ошибку не даёт на строке КонтролируемоеКоличество = Выборка.Зафасовано;
9 Economics
 
31.01.13
13:56
(8) Выборка.Следующий() перед контролируемым количеством. Перебор начинается перед РасходМешков, заканчивается после последней строки.
10 Maxus43
 
31.01.13
14:01
(9) я этого не вижу в (7), вкладывай код полный, как тут разобраться то если не хватает строк?
11 Maxus43
 
31.01.13
14:02
Отправитель то где? в выборке нет
12 Economics
 
31.01.13
14:05
(11) Отправитель- реквизит формы. Тип данных- СправочникСсылка.Подразделения.
13 Maxus43
 
31.01.13
14:07
в отладчике Отправитель заполнен?
весь код в студию, с циклами и выборками, иначе не понять
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой