Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 02:50
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: вывести норму выбранной номенклатуры из норм расхода владельца номенклатуры  (Прочитано 2715 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн IrinaVolsk

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-29
  • Сайт: 
  • Профессия: Ученик 1С
Помогите решить проблему. Есть документ,в котором выбирается номенклатура(сборка) из справочника "Номенклатура" и владелец(тоже сборка, в которую входит номенклатура) из справочника "номенклатура". Нужно на печать вывести норму выбранной номенклатуры из справочника "нормы расхода" владельца.
Вот код который выводит текущий элемент из норм владельца, а как в нормах найти именно номенклатуру не доходит.
сборка = Владелец;   	
наимен = Номенклатура;   
                       
Нормы= СоздатьОБъект("Справочник.НормыРасходов");
Нормы.ИспользоватьВладельца(наимен);
Нормы.ВыбратьЭлементы();
Пока Нормы.ПолучитьЭлемент()>0 Цикл
материал = (""+ СокрЛП (Нормы.ТекущийЭлемент()));   
Комплектность = (""+ СокрЛП (Нормы.ТекущийЭлемент().Норма.Получить(ТекущаяДата()))); /// выв. норму текущего элемента из норм расхода номенклатуры, если элемент деталь выводит материал
материалД= Сред(материал,10,100);
   
КонецЦикла;
   

Если Найти(материал,"Полуфабрикат,")=1 тогда //// Если в нормах расхода есть слово Полуфабрикат, тогда на печать выв. сб.владелец
Нормы= СоздатьОБъект("Справочник.НормыРасходов");
Нормы.ИспользоватьВладельца(сборка);
Нормы.ВыбратьЭлементы();
Пока Нормы.ПолучитьЭлемент()>0 цикл
 Комплектность = (""+ СокрЛП (Нормы.ТекущийЭлемент())); // выв. тек.элемент норм расхода владельца
    материалД = "Вх.в  " + владелец;
КонецЦикла;
КонецЕсли;
   
компл=Комплектность;
[code]


Оффлайн BotMan

  • *
  • Сообщений: 45
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
перечитал раз 10, нифига не понял! :(
покажи скрин какой, хотя бы!
Жми спасибо, если подсказал 8)

Оффлайн IrinaVolsk

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-29
  • Сайт: 
  • Профессия: Ученик 1С
перечитал раз 10, нифига не понял! :(
покажи скрин какой, хотя бы!

в файле скриншот документа, печатной формы и модуль.

Оффлайн BotMan

  • *
  • Сообщений: 45
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
я так понял он выводит то, что нужно, но не все ?
Жми спасибо, если подсказал 8)

Оффлайн IrinaVolsk

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-29
  • Сайт: 
  • Профессия: Ученик 1С
я так понял он выводит то, что нужно, но не все ?
Да, если "Номенклатура"- деталь, норму материала выводит правильно, а если "Номенклатура"-сборка, заходит в спр.Нормы расхода "Владельца", это тоже правильно, но выводит последний элемент, а нужно "Номенклатуру"-сборку. если ставлю условие в цикле что текущий элемент =номенклатуре, заходит в нормы расхода "Номенклатуры"-сборки. что еще можно сделать?

Оффлайн BotMan

  • *
  • Сообщений: 45
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
Вы выражаетесь сленгом своего предприятия, что такое сборка?
я так понял, что сборка - это определенная группа(подгруппа) в номенклатуре, в которой находятся искомые единицы номенклатуры,
то есть, группа в номенклатуре под названием "60", нам нужно вытащить все единицы номенклатуры из этой группы?
если так, то попробуйте добавить в код визуальную проверку

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


:dfbsdfbsdf:


Жми спасибо, если подсказал 8)

Оффлайн IrinaVolsk

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-29
  • Сайт: 
  • Профессия: Ученик 1С
Вы выражаетесь сленгом своего предприятия, что такое сборка?
я так понял, что сборка - это определенная группа(подгруппа) в номенклатуре, в которой находятся искомые единицы номенклатуры,
то есть, группа в номенклатуре под названием "60", нам нужно вытащить все единицы номенклатуры из этой группы?
если так, то попробуйте добавить в код визуальную проверку

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


:dfbsdfbsdf:
сборка это элемент справочника Номенклатура в подчиненном спр.Нормы расхода находятся элементы номенклатуры  из которых состоит сборка . и владелец это тоже самое, только более крупная сборка. из этого кода выводит только текущий элемент, т.е последний лично у меня. в нормах может быть и 10 элементов номенклатуры, а надо конкретно которая указана в табличной части документа. указываем номенклатуру и владельца(куда входит), из норм владельца вытащить номенклатуру. как-то, так. у меня просто тупик:xfbnsdfb:

Оффлайн BotMan

  • *
  • Сообщений: 45
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
выложи скрин справочников, в них точно указано, что он подчинен?
или давай тимвивер, поковыряемся ;) skype -  botman44
Жми спасибо, если подсказал 8)

Оффлайн IrinaVolsk

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-29
  • Сайт: 
  • Профессия: Ученик 1С
выложи скрин справочников, в них точно указано, что он подчинен?
или давай тимвивер, поковыряемся ;) skype -  botman44

Оффлайн BotMan

  • *
  • Сообщений: 45
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2014-06-05
  • Сайт: 
  • Профессия: Ученик 1С
что такое переменная
комплектность
это список значений или таблица?
так как в нее запихивается все из цикла и перезаписывается.


Нормы= СоздатьОБъект("Справочник.НормыРасходов");
Нормы.ИспользоватьВладельца(наимен);
Нормы.ВыбратьЭлементы();
Пока Нормы.ПолучитьЭлемент()=1 Цикл
материал = (""+ СокрЛП (Нормы.ТекущийЭлемент()));   
материалД= Сред(материал,10,100);     
Если Найти(материал,"Полуфабрикат,")=1 тогда
    материалД = "Вх.в  " + владелец;
Нормы2= СоздатьОБъект("Справочник.НормыРасходов");
Нормы2.ИспользоватьВладельца(сборка);
Нормы2.ВыбратьЭлементы();
Пока Нормы2.ПолучитьЭлемент()=1 цикл
Комплектность = (""+ СокрЛП (Нормы2.ТекущийЭлемент()));
КонецЦикла;
иначе
Комплектность = (""+ СокрЛП (Нормы.ТекущийЭлемент().Норма.Получить(ТекущаяДата())));
КонецЕсли;
Конеццикла;
Жми спасибо, если подсказал 8)


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
46 Сообщений
oleg-x
44 Сообщений
andron81_81
44 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 133
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal