PDA

Просмотр полной версии : Помогите с кодом



витал1980
31.08.2019, 20:36
У документа продажа товаров есть реквизит ПоСчету Тип ДокументСсылка.Счет
Документ продажа вводиться на основании документа счет, нужно сделать так чтоб пользователь не поставил количество больше чем в документе основании счет. Я учусь на программиста, не опытный в обработке проведения продажи товаров вот кусок кода, который пишу для этого механизма: без этого куска, проведение все свои функции выполняет, не знаю как обратиться к счету основанию количеству, ошибки выдает, или цикл с условным не правильно построил?

Пока ВыборкаДетальныеЗаписи.Сл� �дующий() Цикл


Если НЕ ЗначениеЗаполнено(ПоСчету) Тогда
Продолжить;
ИначеЕсли
ВыборкаДетальныеЗаписи.Ко� �ичество < = ПоСчету.Товары.Количество;

Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Нельзя";
Сообщение.Сообщить();
Иначе
Движение = Движения.РезервыНоменклат� �ры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Рас� �од;
Движение.Период = Дата;
Движение.Номенклатура = ВыборкаДетальныеЗаписи.Но� �енклатура;
Движение.Склад = Склад;
Движение.ПоСчету = Ссылка;
Движение.Резерв = ВыборкаДетальныеЗаписи.Ко� �ичество;
КонецЕсли;

Fltr
01.09.2019, 08:22
У документа продажа товаров есть реквизит ПоСчету Тип ДокументСсылка.Счет
Документ продажа вводиться на основании документа счет, нужно сделать так чтоб пользователь не поставил количество больше чем в документе основании счет. Я учусь на программиста, не опытный в обработке проведения продажи товаров вот кусок кода, который пишу для этого механизма: без этого куска, проведение все свои функции выполняет, не знаю как обратиться к счету основанию количеству, ошибки выдает, или цикл с условным не правильно построил?

Пока ВыборкаДетальныеЗаписи.Сл� �дующий() Цикл


Если НЕ ЗначениеЗаполнено(ПоСчету) Тогда
Продолжить;
ИначеЕсли
ВыборкаДетальныеЗаписи.Ко� �ичество < = ПоСчету.Товары.Количество;

Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Нельзя";
Сообщение.Сообщить();
Иначе
Движение = Движения.РезервыНоменклат� �ры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Рас� �од;
Движение.Период = Дата;
Движение.Номенклатура = ВыборкаДетальныеЗаписи.Но� �енклатура;
Движение.Склад = Склад;
Движение.ПоСчету = Ссылка;
Движение.Резерв = ВыборкаДетальныеЗаписи.Ко� �ичество;
КонецЕсли;

В какой конфигурации работаете?