Имя: Пароль:
1C
 
УТ 10.3 Не дает проводить Установку цен
0 davlen
 
08.11.10
14:10
Дата заперта редактирования стоит текущая дата,чтоб не меняли документы за одним числом.Все прекрасно работает, кроме Установки цен не дает проводить редактирование данных этого периода запрещено.Как быть?
1 davlen
 
08.11.10
14:17
ап ап ап
2 aleks-id
 
08.11.10
14:39
у регистра ЦеныНоменклатуры периодичность - в пределах дня. Ставь в пределах секунды.
3 davlen
 
08.11.10
14:55
(2) ааа все просто,спасибо
4 Dem1urg
 
08.11.10
15:30
(3) Только потом не удивляйся, если у тебя в течение одногод дня будет действовать несколько разных цен на один и тот же товар.
Лично я бы так не делал. Лучше уж сделать свою процедуру проверки даты запрета для документа Установка цен.
5 aleks-id
 
08.11.10
15:54
(4) как вариант.
либо проверку в документ на наличие установки цены на товар за этот день(например при изменении номенклатуры).
6 МастерВопросов
 
19.11.10
11:24
"у регистра ЦеныНоменклатуры периодичность - в пределах дня."

Давно хотел спросить в чем смысла такого изврата от 1С?
1. Пришел один и тот же товар от разных поставщиков
2. Товаровед приходует всё в один день - создает доки "Поступление товаров и услуг"
3. Потом вводом на основании "Установка цен"
4. Первая "Установка цен" нормально, вторая - "Запись с такими ключевыми полями существует"
5. Объясняешь товароведу, что значит эта ошибка.
6. Товаровед пытается выяснить: "А зачем так сделано"?
7. Разводишь руками...
7 КМ155
 
19.11.10
11:30
(6) товаровед жжёт
он отпускает товар до обеда по одной цене, а после по другой ?
8 Кокос
 
19.11.10
11:32
(6) я одному клиенту делал кнопочку на поступлении которая ищет в пределах дня установку в которой есть по такой цене товар и запихивает туда новую цену вместо старой. если таковой нет то добавляет новый док :)
9 МастерВопросов
 
19.11.10
11:36
(7) Вопервых - "установка цен" меняет не только продажные цены.
Вовторых - после ввода на основании сидеть и ковырять "установка цен" на предмет товара, у которого сегодня уже менялась цена товароведу совсем не в кайф.
10 МастерВопросов
 
19.11.10
11:37
(8) это понятно, что можно так допилить.
Но какой тайный замысел мешает 1С периодичность регистра поставить "1сек" и не мотать нервы юзерам.
11 КМ155
 
19.11.10
11:37
(9) и чё,
так и отпускает по разным ценам - Ооооо
12 Кокос
 
19.11.10
11:38
(10) читай (7) :)
13 МастерВопросов
 
19.11.10
11:41
(12) читай (9)
14 Кокос
 
19.11.10
11:42
(13) рекурсия однако :)) вообще ответ на вопрос был получен автором :) можно закрываться
15 МастерВопросов
 
19.11.10
11:44
(14) Эй! А я что не человек?
У меня тоже был вопрос: "Давно хотел спросить в чем смысла такого изврата от 1С?"
16 Кокос
 
19.11.10
11:48
(15) смысл вытекает из логики :)
17 Кокос
 
08.12.10
22:54
переделал так. хотя конечно запросом надо было. но тогда чет не до него было :)

Процедура СохранитьЦеныНоменклатуры(Отказ)

   ЗаписатьЦеныНоменклатуры = Ложь;
   Для Каждого ТипЦенНоменклатуры Из ЦеныНоменклатуры Цикл
       Если ТипЦенНоменклатуры.Записать Тогда
           ЗаписатьЦеныНоменклатуры = Истина;
           Прервать;
       КонецЕсли;
   КонецЦикла;

   // Если нет ни одного типа цен для записи, то создавать документ смысла нет.
   Если ЗаписатьЦеныНоменклатуры Тогда
       Если НЕ ЗначениеЗаполнено(ДокументУстановкаЦен) Тогда
           Ответ = Вопрос("Не выбран документ для записи данных по ценам номенклатуры."
                          + Символы.ПС + "Создать новый документ ""Установка цен номенклатуры"" и продолжить запись(При отказе попытаться найти существующий документ)?"
                          , РежимДиалогаВопрос.ДаНет);

           Если Ответ = КодВозвратаДиалога.Да Тогда
               ДокументОбъект = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
               ДокументОбъект.Дата = РабочаяДата;
               ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокументОбъект, глЗначениеПеременной("глТекущийПользователь"));

               ИндексСтрокиТаблицыЦен = 0;
           ИначеЕсли Ответ = КодВозвратаДиалога.Нет Тогда
               вЦены = Документы.УстановкаЦенНоменклатуры.Выбрать(НачалоДня(ТекущаяДата()),КонецДня(ТекущаяДата()));
               Пока вЦены.Следующий() Цикл
                   Для Каждого Строчка из вЦены.Товары Цикл
                       Если Строчка.Номенклатура.Ссылка = Ссылка Тогда
                           ДокументОбъект = вЦены.ПолучитьОбъект();
                           Прервать;
                       КонецЕсли;
                   КонецЦикла;    
               КонецЦикла;    
               Если ДокументОбъект.Ссылка.Пустая() Тогда
                   Отказ = Истина;
                   Возврат;
               КонецЕсли;    
           КонецЕсли;
18 DjSpike
 
08.12.10
23:31
Я отмечусь, а завтра почитаю.  Недавно задавал аналогичный вопрос про разные цены в УТ v8: Как в УТ сделать разные цены
19 Кокос
 
09.12.10
01:16
(18) там последний цикл ищет установку цен в течении дня с этим товаром и туда ставит новую цену. вторая цена никак не получается :) вообще можно сделать было запросом. это у меня на выборки от 7рки привычка осталась :)