Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Что не так делаю в обработке????  (Прочитано 4950 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Sailanser
Гость
« : 07-07-2005 18:07 » 

Есть небольшая база по производству: в ней в документах и в справочнике "Товары" есть поле с его признаком которое ссылается на перечисления где собственно эти признаки и записаны. Оно имеет всего три значения 1. Выходной продукт, это готоввая продукция, 2. Возвратный отход, это обычно брак, 3. Безвозвратный отход, это то что не поддается обработке, отрезки опилки и прочее. Задача состоит в том что-бы по окончании месяца часть товара списать в брак. Я написал такую обработку:

Процедура Брак()
   Тов=СоздатьОбъект("Справочник.Товары");
   Крой=СоздатьОбъект("Документ.Кройка");
   Крой.ВыбратьДокументы(ВыбНачПер,ВыбКонПер);
   Пока Крой.ПолучитьДокумент()>0 Цикл
      Брак=Перечисление.ПризнакТовара.ТехнПотеря;
      Крой.ВыбратьСтроки();
      Пока Крой.получитьСтроку()>0 Цикл
         Сообщить("Списываем в брак "+Крой.ТекущийДокумент());
         Тов.НайтиЭлемент(Крой.Товар);
         Если Крой.ВидВыхода=Перечисление.ПризнакТовара.ВыходнойПродукт Тогда
            Тов.ПризнакТовара=Брак;
            Крой.ВидВыхода=Перечисление.ПризнакТовара.ТехнПотеря;
            Тов.Наименование=Тов.Наименование+ " брак";
         КонецЕсли;
         Тов.Записать();
      КонецЦикла;
   КонецЦикла;
   Предупреждение("Все документы переделаны!!!");
КонецПроцедуры

Самое что интересное не могу понять все работает и делает как надо кроме одной стоки " Крой.ВидВыхода=Перечисление.ПризнакТовара.ТехнПотеря;" не могу понять что я сделал не такjavascript:void(0);
Записан
Kivals
Модератор

us
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 11-07-2005 14:15 » 

         Тов.Записать();
      КонецЦикла;
      Крой.Записать();
   КонецЦикла;
   Предупреждение("Все документы переделаны!!!");
Записан
Kivals
Модератор

us
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 11-07-2005 14:16 » 

А возможно еще и Крой.Провести();
Записан
Sailanser
Гость
« Ответ #3 : 11-07-2005 15:37 » 

Спасибо за подсказку, просто не думал что документ тоже надо записать в обработке что-бы это значение поменялось
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines