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

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

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

Оффлайн mark2011

  • *
  • Сообщений: 41
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-05-18
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день!

Аналогичная тема есть, но на запросы. Мне нужно немножко другое, сейчас поясню.

Есть справочник "Номенклатура". Там прайс-лист. Если выбрать любой товар (просто выбрать мышкой) и дать команду "Справочники - Цены" то будет показана оптовая и розничная цена для данного товара.

На данный момент есть следующий рабочий код:

Процедура Выбрать_Файл()

ИмяФайла = "";
ВФ = "";
ИмяКаталога = "";
ЗаголовокОкна = "Выберите файл для экспорта";
РасширениеФайла = "xml";

Если (ФС.ВыбратьФайл(0, ИмяФайла, ИмяКаталога, ЗаголовокОкна, "Текст(*.xml)|*.xml", РасширениеФайла)=1) Тогда
Форма.ВФ.Текст = ИмяКаталога + ИмяФайла;
КонецЕсли

КонецПроцедуры


Процедура Сформировать()
Если ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "v7plus.dll") <> 1 Тогда
        Если ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "v7plus.dll") <> 1 Тогда
            Предупреждение("Компонента v7plus.dll не найдена!");
        КонецЕсли;
    КонецЕсли;

ФайлХМЛ = СоздатьОбъект("AddIn.XMLParser");
Корень =ФайлХМЛ.СоздатьДокумент();
    Данные =Корень.СоздатьПодчиненныйЭлемент("root");
    ТОПИК= Данные.СоздатьПодчиненныйЭлемент("Topic");
   СпрНоменклатура = СоздатьОбъект("Справочник.Номенклатура");
   СпрНоменклатура.ВыбратьЭлементы();       
   
    Пока СпрНоменклатура.ПолучитьЭлемент() = 1 Цикл
      Номенкл = ТОПИК.СоздатьПодчиненныйЭлемент("Nomenkl");
  ЭлементКод =    Номенкл.СоздатьПодчиненныйЭлемент("ELEMID");
РодитКод            =    Номенкл.СоздатьПодчиненныйЭлемент("RODITKOD");
АртикулНазв = Номенкл.СоздатьПодчиненныйЭлемент("ARTICUL");   
МинОстаток = Номенкл.СоздатьПодчиненныйЭлемент("MIN_OST"); 
Описание = Номенкл.СоздатьПодчиненныйЭлемент("DESCR");
Уровень = Номенкл.СоздатьПодчиненныйЭлемент("LEVEL");
РодНаим        =    СпрНоменклатура.ТекущийЭлемент().Родитель;
// НаименРод = Роднаим.Наименование;
КодРод          = Роднаим.Код;                                   
ЭлементКод.Значение = СпрНоменклатура.ТекущийЭлемент().Код;       
АртикулНазв.Значение  =   ?(ПустоеЗначение(СпрНоменклатура.ТекущийЭлемент().Артикул)=1,0,СпрНоменклатура.ТекущийЭлемент().Артикул);
// РодитИм.Значение    =    ?(ПустоеЗначение(НаименРод)=1,0,НаименРод);
РодитКод.Значение   =    ?(ПустоеЗначение(КодРод)=1,0,КодРод);     
МинОстаток.Значение =    ?(ПустоеЗначение(СпрНоменклатура.ТекущийЭлемент().МинОстаток)=1,0,СпрНоменклатура.ТекущийЭлемент().МинОстаток);
            ИМЯ1              =    Номенкл.СоздатьПодчиненныйЭлемент("NAME");   
            ИМЯ1.Значение     =    СпрНоменклатура.ТекущийЭлемент().Наименование;   
Символ   =   Найти(ИМЯ1.Значение, "*");
               
                Сообщить(СпрНоменклатура.ТекущийЭлемент().Комментарий);
   
Если РодитКод.Значение = "0" Тогда
       Уровень.Значение = 1;   
ИначеЕсли Символ = 1 Тогда
    Уровень.Значение = 2;
Иначе 
    Уровень.Значение = 3;
КонецЕсли;   
КонецЦикла;
ИмяФайла    = "report.xml";
        ПапкаФайла  = "C:\REPORT\";
        Корень.Записать(ПапкаФайла+ИмяФайла);

КонецПроцедуры

Сюда надо как-то добавить выборку по ценам таким образом, чтобы в каждом товаре была показана только его оптовая и розничная цена.

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

<Nomenkl>
<ELEMID>00000090</ELEMID>
<RODITKOD>0</RODITKOD>
<ARTICUL>0</ARTICUL>
<MIN_OST>0</MIN_OST>
<LEVEL>1</LEVEL>
<NAME>DVD</NAME>
</Nomenkl>

Требуется что-то такое:
<Nomenkl>
<ELEMID>00000090</ELEMID>
<RODITKOD>0</RODITKOD>
<ARTICUL>0</ARTICUL>
<MIN_OST>0</MIN_OST>
<LEVEL>1</LEVEL>
<NAME>DVD</NAME>
<OPTPRICE>здесь цена оптом</OPTPRICE>
<ROZNPRICE>здесь цена в розницу</ROZNPRICE>
</Nomenkl>

Вроде понятно выразился... Всем спасибо за помощь :)


Оффлайн mark2011

  • *
  • Сообщений: 41
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-05-18
  • Сайт: 
  • Профессия: Ученик 1С
Упс, я дико извиняюсь, не в ту тему написал. Модераторы, перенесите пожалуйста в 1с 7.7, я не специально  :nhsrm: если здесь кто-нибудь ответит, моя особая благодарность ))

Ещё раз: версия 1С Предприятие 7.7


Теги:
 


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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
133 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
61 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
41 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
27 Сообщений
alexandr_ll
23 Сообщений

* Кто онлайн

  • Точка Гостей: 194
  • Точка Скрытых: 0
  • Точка Пользователей: 4
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal