Имя: Пароль:
1C
 
Перенос цен номенклатуры КД
0 Gossar1C
 
26.02.15
15:25
Здравствуйте еще раз! Подскажите пожалуйста как при выгрузке номенклатуры, выгружать и цену срез последних. Тобишь порядок действий в КД. Заранее благодарю!

Просто в КД я создал ПКО ЦеныНоменклатуры, но как его связать с выгружаемой номенклатурой?
Допустим перед выгрузкой (ПКО Номенклатура) я получаю цену:

Запрос = Новый Запрос;

Запрос.Текст =
"ВЫБРАТЬ
|    ЦеныНоменклатурыСрезПоследних.Номенклатура,
|    ЦеныНоменклатурыСрезПоследних.Цена
|ИЗ
|    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата,) КАК ЦеныНоменклатурыСрезПоследних
|ГДЕ
|    ЦеныНоменклатурыСрезПоследних.ВидЦены = &ВидЦены";

Запрос.УстановитьПараметр("ВидЦены",Справочники.ВидыЦен.НайтиПоНаименованию("Прайс"));
Запрос.УстановитьПараметр("Дата",ТекущаяДата());
Запрос.УстановитьПараметр("Номенклатура",Источник.Значение);

ТаблицаЦен = Запрос.Выполнить().Выгрузить();

А далее выгружать по правилу? Если у регистра цен есть регистратор, документ Установка цен
1 D_E_S_131
 
26.02.15
15:27
А куда ты эти цены будешь "засовывать" при загрузке?
2 anatoly
 
26.02.15
15:28
(0) а зачем тебе только срез а не все записи? история в приемнике будет совсем не интересна?
3 Gossar1C
 
26.02.15
15:30
(1) в том то и дело без регистратора я их не запишу, аля нужен документ установки цен, тогда такой вопрос... могу ли я как то скопом получить цену по всей номенклатуре выгруженной, допустим прайс на срез последних, а далее в приемнике при загрузке создать документ установки цен и туда все это залить? Подскажите в данном случае как такое проделать?
(2) не интересна :) в интересах начальства
4 D_E_S_131
 
26.02.15
15:37
(3) Почему же не запишешь без регистратора? Создай регистратор и пиши. Можешь даже в комментарии у регистратора написать "#Загружено из другой ИБ. Внутрь не смотреть!!!"
5 Gossar1C
 
26.02.15
15:41
(4) ну а нормально посоветовать можете? или так будем сарказмом обмениваться? Не проще ли сделать по такому принципу который я описал в (3) скопом получить и цену и номенклатуру, а в приемнике записать?
6 Dmitriy_76
 
26.02.15
15:44
корректировку записей регистра не предлагали еще ?
7 Gossar1C
 
26.02.15
15:45
(6) нет :) я думаю без них можно обойтись
8 Dmitriy_76
 
26.02.15
15:46
(7) либо установка цен, либо (6) . третьего варианта не вижу
9 Gossar1C
 
26.02.15
15:50
(8) так вот я и думаю через установку цен. Попробую как всегда через ж сделать...
перед выгрузкой создам параметр
Параметры.Вставить("СписокНоменклатуры", Новый Массив);

И в ПКО номенклатуры при выгрузке буду туда значения пихать

а вот далее попробую при загрузке обработать и создать документ. Хотя хз, говорю в КД еще юнец
10 probably
 
26.02.15
15:52
(8), (9) третий вариант:
Создать в источнике документ установки цен со всеми актуальными ценами и его перенести один в один и трахать мозг себе и окружающим. Дел на 5-7 минут.
11 probably
 
26.02.15
15:53
(10) * НЕ трахать
12 Dmitriy_76
 
26.02.15
15:53
(9) не проще ли создать пко(установка цен)..из вход данных получить таблицу цен(товар..цена..единица...вид цены....)...и все это благополучно загрузится в установку цен..
13 Dmitriy_76
 
26.02.15
15:53
(10) о как :))
14 D_E_S_131
 
26.02.15
15:54
(9) Чего же "Параметр" создавать, уж описывай выгрузку данных в коллекцию (Номенклатура, Тип цен, Цена).
15 Gossar1C
 
26.02.15
15:59
(10) а зачем создавать документ то установки цен в актуальной? просто засорять базу?
(12) у нас этих документов полным полно, с учетом нынешней ситуации обновляем часто) он же не будет по каждой номенклатуре отдельно переносить документы? мне кажется проще получить цену в актуально, выгрузить ее и уже новым регистратором записать, аля тот же установка цен :)
16 DionisNN
 
26.02.15
16:09
Вот только закончил заниматься подобным.
Создаешь ПКО "УстановкаЦенНоменклатуры"
Поиск по номеру и дате и их задаешь вручную на дату "до начала времен"
Затем в правилах выгрузки данных ставишь "произвольный алгоритм" и "перед обработкой" делаешь выборку из регистра сведений.


        ДанныеВыгрузки.Вставить("Товары"       , Товары);
        ВыгрузитьПоПравилу(ДанныеВыгрузки, , ИсходящиеДанные, ,"ВводОстатковТоваров");
17 floody
 
26.02.15
16:09
Вариантов много, один из:
Создать ПКО для документа "Установка цен номенклатуры"
Потом например в ПКО другого документа (ради которого правила создавались), вы ведь наверняка документы какие-то переносите, после выгрузки делать ВыгрузитьПоПравилу
18 DionisNN
 
26.02.15
16:10
(16) вот ссылочка хорошая - подробно все разжевано:

http://1c-pro.ru/threads/sozdanie-dokumenta-v-konvertacii-dannyx.45836/
19 Gossar1C
 
26.02.15
16:29
(18) Спасибо! буду пробовать)
20 probably
 
26.02.15
17:04
(15) от одного-то документа база просто засорится по самый край....
21 D_E_S_131
 
26.02.15
17:38
(20) А как поведет себя база-источник, если в день обмена данными были уже введены Установки цен? Обычно ведь периодичность РС.ЦеныНоменклатуры установлена "День".
22 probably
 
26.02.15
18:25
(21) я задачу интрепретировал так:
сейчас есть рабочая база, надо создать еще одну, очень похожую на источник и слить туда номенклатуру.
А потому ВСЕ цены нужно выгрузить одни раз на текущий момент, и, если будут еще обмены в будущем, то последующие изменения цен будут выгружаться уже штатно заводимыми установками цен.
Поэтому зачем городить огород на целый день обсуждения и решения из-за задачи на 5 минут, мне пока не понятно.