Модуль документа Переоценка товаров

  • Автор темы klio
  • Дата начала
Статус
Закрыто для дальнейших ответов.
K

klio

Гость
#1
Помогите правильно написать модуль проведения документа Переоценка товаров в программе 1с 7.7, если изменяется цена не всю партию товара, а лишь на часть
 
L

LSH

Гость
#2
<!--QuoteBegin-klio+7:02:2007, 13:54 -->
<span class="vbquote">(klio @ 7:02:2007, 13:54 )</span><!--QuoteEBegin-->в программе 1с 7.7
[snapback]55296" rel="nofollow" target="_blank[/snapback]​
[/quote]

дизассемблером его :)))

А конкретно - сталкивался с этой проблемой как-то...
Можно документом переоценка создать новую партию с новой ценой и перенести часть товара (столько сколько надо переоценить) на эту партию. Это в общих чертах.
 
L

LSH

Гость
#4
что тут можно сказать подробнее??

Я твою конфигурацию в глаза не видел, поэтому ничего добавить к вышесказанному не могу :)
 
K

klio

Гость
#5
сейчас модель документа выглядет следующим образом, т.е на всю партию товара

Перем СпрПартии;

//*********************************************************
Процедура ОбработкаПроведения()
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
СпрПартии.ИспользоватьВладельца(ТМЦ);
Если СпрПартии.НайтиЭлемент(Партия)=1 тогда
ИНАЧЕ
Сообщить("В строке -"+НомерСтроки+" не определена партия!")
КонецЕсли;

УстановитьРеквизитСправочника(СпрПартии,"ЦенаПерПрод",ЦенаПерПродНовая,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"ЦенаУч",ЦенаУчНовая,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"НадбавкаОпта",НадбОпта,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"Прейскурант",ТекущийДокумент(),ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"Наценка",НадбавкаНовая,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"Налог",НПНовая,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"НДС",СтавкаНДСНовая,ДатаДок);
УстановитьРеквизитСправочника(СпрПартии,"ЦенаРоз",ЦенаСНП,ДатаДок);


Операция.Содержание ="Переоценка товаров";
Операция.Записать();
КонецЦикла;
КонецПроцедуры
//*********************************************************


СпрПартии=СоздатьОбъект("Справочник.Партии");
 
L

LSH

Гость
#6
код я тут писать не буду...если в себе уверенности нет - наймите программиста.
Общий принцип такой:
1. Проверяем, выбрана ли партия для переоценки.
2. Проверяем, есть ли остаток по этой партии.
3. Проверяем, есть ли партия, созданная этим документом с такой же ценой (может мы перепроводим док).
4. Если (3) = false - создаем новую партию с той ценой, которую установили в переоценке, иначе - позиционируемся на найденную партию
5. Делаем проводки по переоценке (минус по старой партии, плюс по новой)
 
K

klio

Гость
#7
спасибо, попытаюсь что-нибудь сделать
 
Статус
Закрыто для дальнейших ответов.