Имя: Пароль:
1C
1С v8
Установка скидки 100%
,
0 progaoff
 
24.06.15
12:42
Помогите с кодом, нужно в документе при изменении цены выставить скидку 100% на товары, смысл в том что бы этот код смотрел в регистр где хранится определенная дата, и если эта дата совпадает с текущей, то обнулять цену на материалы которые хранятся в справочнике в отдельной папке.
1 mehfk
 
24.06.15
12:44
2 progaoff
 
24.06.15
12:46
решил переформулировать вопрос, может что то не так сказано было.
3 Ненавижу 1С
 
гуру
24.06.15
12:47
ну рассказывай нам про регистр тогда
4 progaoff
 
24.06.15
12:49
в регистре есть дата события и булево значение "Бесплатные материалы", а в роли измерения указана организация. организаций у меня 19.
5 Ненавижу 1С
 
гуру
24.06.15
12:50
дата события это период или реквизит или ресурс?
булево значение это что?
6 progaoff
 
24.06.15
12:51
Дата события
Бесплатные материалы это ресурсы
7 progaoff
 
24.06.15
12:52
в регистр сведений эту запись делает документ, и там указаны эти реквизиты.
8 Ненавижу 1С
 
гуру
24.06.15
12:54
ну делай запрос, в чем проблема?
9 progaoff
 
24.06.15
12:54
В документе, в котором нужно обнулять стоимость товара, цены нет, есть только общая сумма за количество. и цена услуги
10 progaoff
 
24.06.15
12:55
вот в запросе как раз и проблема....чуть еровато с познаниями
11 Ненавижу 1С
 
гуру
24.06.15
12:56
(10) показывай, что сделал уже
12 progaoff
 
24.06.15
12:56
да сделал только структуру всего этого, а за код даже не брался, в голову ваще ничего не приходит..
13 progaoff
 
24.06.15
13:17
Есть только регистр, документ который в регистр вносит данные, и папка с определенными товарам.
14 Cyberhawk
 
24.06.15
13:18
ЯННП
15 progaoff
 
24.06.15
13:19
Эт че??
16 Cyberhawk
 
24.06.15
13:20
На картинках покажи что тебе надо
17 progaoff
 
24.06.15
13:27
18 progaoff
 
24.06.15
13:29
19 Cyberhawk
 
24.06.15
13:32
А теперь еще и в трех словах о том, что тебе надо
20 progaoff
 
24.06.15
13:34
В определенный день, товары должны быть, бесплатными, и сумма в документе визит, не должна включать в себя стоимость этих материалов.
21 progaoff
 
24.06.15
14:29
Ребят, ну хоть какие то варианты есть???
22 Andrey2C
 
24.06.15
14:52
(21) Что за релиз? Торговля? Штатные скидки есть?
23 progaoff
 
24.06.15
14:56
Штатных нет, скидок, релиз самописный, но смысл взят из торговли.
24 Andrey2C
 
24.06.15
14:57
(21) Самописная чтоли? Ну так пиши запрос к своему регистру и сравнивай дату с датой документа. Что конкретно не понятно то? Написать запрос за тебя?
25 progaoff
 
24.06.15
14:58
Запрос = Новый Запрос;
       Запрос.Текст =
     "ВЫБРАТЬ
     |    АкцииСрезПоследних.ДатаАкции КАК ДатаАкции,
     |    АкцииСрезПоследних.БесплатныеМатериалы
     |ИЗ
     |    РегистрСведений.Акции.СрезПоследних КАК АкцииСрезПоследних"
     |ГДЕ
     |   АкцииСрезПоследних.ДатаАкции = &ДатаАкции
     |И  АкцииСрезПоследних.БесплатныеМатреиалы = &БесплатныеМатериалы";
     Запрос.УстановитьПараметр("ДатаАкции", ДатаАкции);
     Запрос.УстановитьПараметр("БесплатныеМатериалы", БесплатныеМатериалы);
     Запрос.Выполнить().Выбрать()
     Результат = Запрос.Параметры
26 progaoff
 
24.06.15
14:58
Все дальше провал)))
27 Andrey2C
 
24.06.15
15:06
Для каждого Строка Из Товары Цикл
Запрос = Новый Запрос;
       Запрос.Текст =
     "ВЫБРАТЬ
     |    АкцииСрезПоследних.ДатаАкции КАК ДатаАкции,
     |    АкцииСрезПоследних.БесплатныеМатериалы
     |ИЗ
     |    РегистрСведений.Акции.СрезПоследних КАК АкцииСрезПоследних"
     |ГДЕ
     |   АкцииСрезПоследних.ДатаАкции = &ДатаАкции
     |И  АкцииСрезПоследних.БесплатныеМатреиалы = &БесплатныеМатериалы";
     Запрос.УстановитьПараметр("ДатаАкции", ДатаТвоегоДок);
     Запрос.УстановитьПараметр("БесплатныеМатериалы", Строка.ТвойМатериалПриПрохожденииЦикломПоТЧ);
     Результат = Запрос.Выполнить().Выбрать();
     Пока Результат.Следующий Цикл
        
     КонецЦикла;
КонецЦикла;
28 progaoff
 
24.06.15
15:10
ТвойМатериалПриПрохожденииЦикломПоТЧ? Это как?
29 Andrey2C
 
24.06.15
15:11
(28) Номенклатура
30 progaoff
 
24.06.15
15:13
нет, я про перебор табличной части, как ее сравнить и понять какой товар нужен что бы сумму 0 установить
31 Andrey2C
 
24.06.15
15:14
Если Результат.Следующий Тогда
Строка.Сумма = 0;
КонецЕсли;
32 Andrey2C
 
24.06.15
15:17
(30) Короче если в запросе нашли такой товар по дате и номенклатуре то ставим сумму 0). Или найди того программиста что писал вам все это и пусть он напишет сам.
33 progaoff
 
24.06.15
15:17
Пока Результат.Следующий Цикл
        
КонецЦикла; Здесь???
34 Andrey2C
 
24.06.15
15:18
(33) Вместо
Пока Результат.Следующий Цикл
        
КонецЦикла
пиши:
Если Результат.Следующий Тогда
Строка.Сумма = 0;
КонецЕсли;
35 progaoff
 
24.06.15
15:18
Ну я так понял, это если в карточке товара стоит галочка бесплатный товар????
36 progaoff
 
24.06.15
15:19
я сдесь одного не пойму, как вычисляется товар, по какому принципу.
37 Andrey2C
 
24.06.15
15:31
(36) Короче нифига не понятно что там у тебя. Если Бесплатные материалы это булево = истина то в этот день продаются бесплатные материалы отмеченные в справочнике галочкой? Если так, то нужно делать запрос к твоему Справочнику Номенклатура или как он там у тебя называется?
38 progaoff
 
24.06.15
15:34
https://drive.google.com/open?id=0B8KJK9-cwDQDTTFLaE84ZmFNTEU&authuser=0 Вот этот документ, устанавливает дату акции, а товары хранятся в обычном справочнике, без каких либо дополнительных признаков
39 progaoff
 
24.06.15
15:40
и как быть???
40 Andrey2C
 
24.06.15
15:46
ДеньАкции = Ложь;
Запрос = Новый Запрос;
       Запрос.Текст =
     "ВЫБРАТЬ
     |    АкцииСрезПоследних.ДатаАкции КАК ДатаАкции,
     |    АкцииСрезПоследних.БесплатныеМатериалы
     |ИЗ
     |    РегистрСведений.Акции.СрезПоследних КАК АкцииСрезПоследних"
     |ГДЕ
     |   АкцииСрезПоследних.ДатаАкции = &ДатаАкции
     |И  АкцииСрезПоследних.БесплатныеМатреиалы = &БесплатныеМатериалы";
     Запрос.УстановитьПараметр("ДатаАкции", ДатаТвоегоДок);
     Запрос.УстановитьПараметр("БесплатныеМатериалы", Истина);
     Результат = Запрос.Выполнить().Выбрать();
     Если Результат.Следующий Тогда
        ДеньАкции = Истина;
     КонецЕсли;
Если ДеньАкции Тогда
Для Каждого Строка Из Товары Цикл
   Запрос = Новый Запрос;
       Запрос.Текст =
     "ВЫБРАТЬ
     |Номенклатура.Ссылка
     |Из Справочник.Номенклатура КАК Номенклатура
     |ГДЕ Номенклатура.Ссылка = &Номенклатура
     |И Номенклатура.ПометкаБесплатного = Истина;
      Запрос.УстановитьПараметр("Номенклатура", Строка.Номенклатура);
      Результат = Запрос.Выполнить().Выбрать();
      Если Результат.Следующий Тогда
         Строка.Сумма = 0;
      КонецЕсли;
КонецЦикла;
41 Andrey2C
 
24.06.15
15:49
Так чтоли нет? Если нет то приглашай того, кто писал эту конфигурацию) Или у тебя там весь товар бесплатный?)))
42 progaoff
 
24.06.15
16:03
{Документ.Визит.Форма.ФормаДокумента_Макси.Форма(1971,23)}: Переменная не определена (Номенклатура)
Для Каждого Строка Из <<?>>Номенклатура Цикл (Проверка: Толстый клиент (обычное приложение))
43 progaoff
 
24.06.15
16:06
Теперь бы понять на каком этапе формируется сумма продажи
44 progaoff
 
24.06.15
16:23
я уже ничего не понимаю,  в процедуре приизменеии суммы продажи вставил этот запрос, и все равно при добавлении вылазиет сумма
45 progaoff
 
24.06.15
16:57
Поставил галочку на товаре, все равно голяк!
46 Cyberhawk
 
24.06.15
16:59
Помогу удаленно (не за бесплатно)
47 progaoff
 
24.06.15
17:01
не за бесплатно, у меня есть кому помагать, я хочу сам разобраться