Имя: Пароль:
1C
1С v8
Как ввести в документ "Поступление товаров и услуг" цену в рознице
0 Russkiy
 
13.12.12
14:48
Привет, ребята!

У меня 1С:Предприятие 8.2 (8.2.15.318), конфигурация "Управление торговлей для Украины", редакция 2.3.

Я тут столкнулся с небольшой (для знатоков) проблемой. Мне нужно оприходовать товар на склад типа НТТ. Открыл новый документ, наполнил нужными реквизитами, табличную часть заполнил с помощью обработки заполнения табличных частей из файла Excel, созданной программистом 1С по моему заказу. В этой обработке не было предусмотрено, что в табличной части документа будет присутствовать колонка "Цена в рознице", поэтому после заполнения табличной части она осталась без данных. Однако конфигурацией предусмотрена проверка на заполнение этого поля строки, и теперь при попытке проведения документа операция не выполняется, и выпадает сообщение "Не удалось провести "Поступление товаров и услуг в НТТ"!", а по поводу каждой строки в служебных сообщениях сообщается, что "...не заполнено значение реквизита "Цена в рознице".

Тогда я обращаюсь к обработке табличной части. Кнопкой "Изменить" открываю диалог процедуры, выбираю тип обработки "Заполнить цены в рознице по типу", задаю тип цены "Розничная", нажимаю кнопку "Выполнить". В результате предварительной обработки в колонке "% наценки" появляются почему-то цифры "-100,00", в колонке "Розничная цена" ничего не появляется, и при переносе результата в документ в последнем в соответствующих колонках - то же самое. Причём, если я в документе вручную установлю в какой-нибудь строке в колонке  "Процент розничной наценки" какое-нибудь значение, отличное от "-100,00", то сразу же просчитывается цена в рознице, и соответствующее её значение появляется в одноимённой колонке документа по этой позиции.

Вопрос: можно ли как-нибудь заставить систему при обработке табличной части документа подставлять в колонку "% наценки" не "-100,00" (что обработка делает не спросясь, автоматически), а иное значение, желательно заданное пользователем?

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

Буду очень признателен за дельную подсказку.
1 DrShad
 
13.12.12
14:50
(0) ты лоханулся вот здесь [наполнил нужными реквизитами, табличную часть заполнил с помощью обработки заполнения табличных частей из файла Excel, созданной программистом 1С по моему заказу]
2 Russkiy
 
13.12.12
14:51
А почему "лоханулся"?
3 Russkiy
 
13.12.12
14:52
Мне нужно заполнять с помощью обработки, потому что в списке сотни позиций...
4 DrShad
 
13.12.12
14:54
потому что есть типовая обработка ЗагрузкаДанныхИзТабличногоДокумента.epf и она умеет все что тебе было нужно
5 Russkiy
 
13.12.12
15:01
Да, я в курсе, но!.. Типовая обработка не делает ещё ряда функций, которые мне нужно делать. Нет, наверное, потребности конкретно описывать эти функции, скажу лишь одно - они для меня очень важны, поэтому-то я и заказывал эту обработку программисту...

Но вопрос всё-таки остаётся: есть ли какая-нибудь возможность в моих конкретных обстоятельствах получить желаемый результат, т. е. цены в рознице в соответствующей колонке документа?
6 DrShad
 
13.12.12
15:02
(5) [Типовая обработка не делает ещё ряда функций, которые мне нужно делать.] наглая ложь!
7 Russkiy
 
13.12.12
15:05
Ты резковат в выражениях... Тебе нужны доказательства? Но я прошу поверить мне пока на слово, потому что мне не хочется сбиваться на обсуждение других вопросов.
8 DrShad
 
13.12.12
15:11
[Тогда я обращаюсь к обработке табличной части. Кнопкой "Изменить" открываю диалог процедуры, выбираю тип обработки "Заполнить цены в рознице по типу", задаю тип цены "Розничная", нажимаю кнопку "Выполнить". В результате предварительной обработки в колонке "% наценки" появляются почему-то цифры "-100,00", в колонке "Розничная цена" ничего не появляется, и при переносе результата в документ в последнем в соответствующих колонках - то же самое]

во-первых при отрицательной наценке в 100% получается Цена = 0
во-вторых уверен что у тебя в типах цен все верно заполнено?
9 Russkiy
 
13.12.12
15:20
Да, в общем-то, не слишком уверен... Я понимаю, что розничная цена получается нулевой из-за наценки -100%. А откуда обработка берёт такую наценку? И о каких ценах ты ведёшь речь?

...Ага!.. Я сунулся в типы цен номенклатуры и обнаружил, что в Розничной цене не выставлена наценка вообще. Похоже, что причина в этом... Ща проверю!
10 DrShad
 
13.12.12
15:23
наконец-то дошло
11 Russkiy
 
13.12.12
15:24
...Нет, не помогло. В справочнике "Типы цен номенклатуры" в цене "Розничная" выставил наценку 50% относительно розничной. Попытался вновь сделать обработку табличной части документа "Поступление товаров и услуг в НТТ", но результат тот же: обработка подставляет наценку в -100%! Почему, пока непонятно...
12 DrShad
 
13.12.12
15:25
[в цене "Розничная" выставил наценку 50% относительно розничной.] уверен, что именно так нужно было?
13 Russkiy
 
13.12.12
15:26
Виноват: относительно не розничной, а базовой. Ею назначена закупочная цена, соотнесённая с отпускной ценой поставщика...
14 Russkiy
 
13.12.12
15:27
Способ расчёта цены - По процентной наценке на базовый тип...
15 DrShad
 
13.12.12
15:28
а базовый тип ты зарегистрировал?
16 DrShad
 
13.12.12
15:28
т.е. Цены поставщика по ПТиУ есть в базе?
17 Russkiy
 
13.12.12
15:31
Нет, вот этого я не делал... А как это можно сделать? Пока что я всё делаю в экспериментальной БД, предназначенной для экспериментов с процедурами. Ну, чтобы не портить рабочуу БД... Так вот здесь этот документ поступления - первый...
18 DrShad
 
13.12.12
15:32
так вот в самом документе есть флажок по которому регистрируются цены поставщика при проведении документа ПТиУ
19 Russkiy
 
13.12.12
15:34
Я сунулся в закладку документа "Цены и валюта", установил флажок в выключателе "Регистрировать цены поставщика". Как я понимаю, теперь они могут появиться в БД, но ведь только после проводки документа. А он не проводится из-за этой колонки "Цена в рознице"...
20 Russkiy
 
13.12.12
15:36
Попытался вновь провести документ - уже с этим флагом. Не проводится. Думал: ладно, не проводит, но, может, цены поставщика зарегистрировал... Попытался вновь обработать табличную часть - эффект тот же...
21 DrShad
 
13.12.12
16:08
ну куда дальше смотреть не скажу, ибо нет у меня под рукой УТ для Украины, сорри
22 Russkiy
 
13.12.12
16:15
Тем не менее спасибо тебе большое, Роман. Ничего, покопаюсь ещё в проблеме - даст Бог, найду решение. Удачи тебе!

P.S. Симпатичная у тебя семья! :) Тьу, тьфу, чтоб не сглазить!..
23 palpetrovich
 
13.12.12
16:25
(22) а документом "УстановкаЦенНоменклатуры" не пробовал установить Розничную? ...желательно датой ранее, чем нужный тебе док ;)
24 DrShad
 
13.12.12
16:33
(23) а он работает для НТТ?
25 Russkiy
 
13.12.12
16:53
Если я правильно понимаю, документ "Установка цен номенклатуры" можно создать напрямую и его табличную часть заполнить по различным вариантам... Для этого нужно сначала создать какой-то документ, из которого данные перенесутся в ТЧ этого. Можно и вручную, но долго - всё-таки сотни позиций. Думаю, можно и так... Но я пошёл таким путём: сначала приходую товар на один из складов, где в приходном документе нет вышеописанного ограничения (условия). Документом "Поступление товаров и услуг". А потом переброшу этот товар на неавтоматизированную торговую точку документом "Перемещение...". Приблизительно так... Как думаете, решится проблема таким образом - "не мытьём, так катанием"?
26 palpetrovich
 
13.12.12
16:57
(25) думаю да, хотя не проверял. Главное что-б на складе НТТ был установлен тот тип цен, который будет фигурировать в "Установка цен номенклатуры"
27 Михаил Козлов
 
13.12.12
17:05
Если я верно понял, Вы хотели бы, чтобы в обработке заполнения ТЧ была возможность на форме указать % наценки, а розничная цена заполнялась бы.
Для этого в обработке ТЧ в процедуре Инициализировать (в модуле обработки) нужно вызвать открытие формы (модально), в форме обработки на ОК выработать флаг, что пользователь хочет выполнить обработку, в способ расчета розничной цены подсмотреть в модуле формы самого документа.
Что-то вроде:
Процедура Инициализировать(Объект, ИмяТабличнойЧасти, ТабличноеПолеОбъекта) ЭКСПОРТ
 фрм = ЭтотОбъект.ПолучитьФорму(, ТабличноеПолеОбъекта);
 Если фрм.ОткрытьМодально()=ИСТИНА Тогда
КонецЕсли;    
КонецПроцедуры
28 Russkiy
 
13.12.12
17:05
Ага, я понял, Пал Петрович. Я за этим прослежу! Спасибо за подсказку!
29 Russkiy
 
13.12.12
17:07
И Вас понял, Михаил! Спасибо! На будущее надо будет сделать именно таким образом, чтобы не ходить длинными путями через вспомогательные документы...
30 palpetrovich
 
13.12.12
17:22
(29) оптишись потом, а то лень проверять :)
31 Russkiy
 
13.12.12
17:31
Попробую, если успею... :)
32 Russkiy
 
13.12.12
23:15
Пал Петрович, жаль, что в твоих личных данных твой E-mail скрыт... Я бы отписался туда. А сюда ты вряд ли вернёшься... Но на всякий случай для тебя отписываюсь: всё получилось, как я и рассчитывал. Оприходовал на один склад, а потом, после создания документов установки цен номенклатуры перебросил весь товар на склад типа НТТ. Так что этод метод работает без проблем. Чего и тебе желаю всегда, везде и во всём! :)