Size: a a a

1с программирование

2021 March 09

AP

Asan Psiho in 1с программирование
В прайсе 5 строк и все готово
источник

AP

Asan Psiho in 1с программирование
Там 1с отлично делает публикацию тока конфиг от админа запусти
источник

AP

Asan Psiho in 1с программирование
Единственное правильно версию врача выбери и конфиг стартани 32 бит если апач 32бит ну и если 64 ну ты понял
источник

АС

Александр Саламатов... in 1с программирование
bakhodirov
Где я допустил ошибку?
параметр этот не установили в запросе
источник

b

bakhodirov in 1с программирование
Александр Саламатов
параметр этот не установили в запросе
Спасибо большое
источник

b

bakhodirov in 1с программирование
Александр Саламатов
параметр этот не установили в запросе
Как мне сделать так чтобы СрокГодности товара истекает через 5 дней
источник

b

bakhodirov in 1с программирование
Если СрокГодности ещё не истек то тогда провести, а если истек то не проводить документ
источник

АС

Александр Саламатов... in 1с программирование
так 5 дней или истек?
источник

b

bakhodirov in 1с программирование
я создал такие запросы
источник

b

bakhodirov in 1с программирование
Александр Саламатов
так 5 дней или истек?
5 дней
источник

aR

aka Rumik in 1с программирование
bakhodirov
я создал такие запросы
а выборке есть Номенклатура?
источник

АС

Александр Саламатов... in 1с программирование
если нужно от 5 дней, то проще использовать разность дат
источник

b

bakhodirov in 1с программирование
aka Rumik
а выборке есть Номенклатура?
Процедура ОбработкаПроведения(Отказ, Режим)
 
 // регистр ОстаткиТовара Расход
 Движения.ОстаткиТовара.Записывать = Истина;
 Для Каждого ТекСтрокаТовары Из Товары Цикл
   Движение = Движения.ОстаткиТовара.Добавить();
   Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
   Движение.Период = Дата;
   Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
   Движение.Склад = Склад;
   Движение.Количество = ТекСтрокаТовары.Количество;
 КонецЦикла;
 
 // регистр ОборотТовара
 Движения.ОтчётОПродажах.Записывать = Истина;
 Для Каждого ТекСтрокаТовары Из Товары Цикл
   Движение = Движения.ОтчётОПродажах.Добавить();
   Движение.Период = Дата;
   Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
   Движение.Склад = Склад;
   Движение.Количество = ТекСтрокаТовары.Количество;
 КонецЦикла;
 
 
 Движения.Записать();
 
 Если Режим = РежимПроведенияДокумента.Оперативный Тогда
 
 Запрос = Новый Запрос;
 Запрос.Текст =
   "ВЫБРАТЬ
   |  ОстаткиТовараОстатки.Номенклатура КАК Номенклатура,
   |  ОстаткиТовараОстатки.КоличествоОстаток КАК КоличествоОстаток,
   |  ОстаткиТовараОстатки.Склад КАК Склад
   |ПОМЕСТИТЬ ТаблицаОстатки
   |ИЗ
   |  РегистрНакопления.ОстаткиТовара.Остатки(
   |      ,
   |      Склад = &Склад
   |        И Номенклатура В
   |          (ВЫБРАТЬ
   |            ПродажаТовараТовары.Номенклатура КАК Номенклатура
   |          ИЗ
   |            Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
   |          ГДЕ
   |            ПродажаТовараТовары.Ссылка = &Ссылка)) КАК ОстаткиТовараОстатки
   |ГДЕ
   |  ОстаткиТовараОстатки.КоличествоОстаток < 0
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ
   |  ПоступлениеТовараТовары.СрокГодности КАК СрокГодности
   |ИЗ
   |  Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары
   |ГДЕ
   |  ПоступлениеТовараТовары.СрокГодности МЕЖДУ ПоступлениеТовараТовары.СрокГодности И ДОБАВИТЬКДАТЕ(ПоступлениеТовараТовары.СрокГодности, ДЕНЬ, 5)
   |  И ПоступлениеТовараТовары.СрокГодности <= &ТекущаяДата
   |
   |УПОРЯДОЧИТЬ ПО
   |  СрокГодности";
 
 Запрос.УстановитьПараметр("Склад", Склад);
 Запрос.УстановитьПараметр("Ссылка", Ссылка);
 Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
 
 РезультатЗапроса = Запрос.Выполнить();
 
 Если НЕ РезультатЗапроса.Пустой() Тогда
     
     Отказ = Истина;

     ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

     Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
       
       Сообщить("Недостаточно товара "+ВыборкаДетальныеЗаписи.Номенклатура+ " в количестве "+ВыборкаДетальныеЗаписи.КоличествоОстаток);
       
     КонецЦикла;
     
   КонецЕсли;    
   
 КонецЕсли;

 
КонецПроцедуры
источник

b

bakhodirov in 1с программирование
Александр Саламатов
если нужно от 5 дней, то проще использовать разность дат
ТекущаяДата - СрокГодности < =5 типо того
источник

АС

Александр Саламатов... in 1с программирование
bakhodirov
ТекущаяДата - СрокГодности < =5 типо того
да, только в запросе
источник

aR

aka Rumik in 1с программирование
bakhodirov
Процедура ОбработкаПроведения(Отказ, Режим)
 
 // регистр ОстаткиТовара Расход
 Движения.ОстаткиТовара.Записывать = Истина;
 Для Каждого ТекСтрокаТовары Из Товары Цикл
   Движение = Движения.ОстаткиТовара.Добавить();
   Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
   Движение.Период = Дата;
   Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
   Движение.Склад = Склад;
   Движение.Количество = ТекСтрокаТовары.Количество;
 КонецЦикла;
 
 // регистр ОборотТовара
 Движения.ОтчётОПродажах.Записывать = Истина;
 Для Каждого ТекСтрокаТовары Из Товары Цикл
   Движение = Движения.ОтчётОПродажах.Добавить();
   Движение.Период = Дата;
   Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
   Движение.Склад = Склад;
   Движение.Количество = ТекСтрокаТовары.Количество;
 КонецЦикла;
 
 
 Движения.Записать();
 
 Если Режим = РежимПроведенияДокумента.Оперативный Тогда
 
 Запрос = Новый Запрос;
 Запрос.Текст =
   "ВЫБРАТЬ
   |  ОстаткиТовараОстатки.Номенклатура КАК Номенклатура,
   |  ОстаткиТовараОстатки.КоличествоОстаток КАК КоличествоОстаток,
   |  ОстаткиТовараОстатки.Склад КАК Склад
   |ПОМЕСТИТЬ ТаблицаОстатки
   |ИЗ
   |  РегистрНакопления.ОстаткиТовара.Остатки(
   |      ,
   |      Склад = &Склад
   |        И Номенклатура В
   |          (ВЫБРАТЬ
   |            ПродажаТовараТовары.Номенклатура КАК Номенклатура
   |          ИЗ
   |            Документ.ПродажаТовара.Товары КАК ПродажаТовараТовары
   |          ГДЕ
   |            ПродажаТовараТовары.Ссылка = &Ссылка)) КАК ОстаткиТовараОстатки
   |ГДЕ
   |  ОстаткиТовараОстатки.КоличествоОстаток < 0
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ
   |  ПоступлениеТовараТовары.СрокГодности КАК СрокГодности
   |ИЗ
   |  Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары
   |ГДЕ
   |  ПоступлениеТовараТовары.СрокГодности МЕЖДУ ПоступлениеТовараТовары.СрокГодности И ДОБАВИТЬКДАТЕ(ПоступлениеТовараТовары.СрокГодности, ДЕНЬ, 5)
   |  И ПоступлениеТовараТовары.СрокГодности <= &ТекущаяДата
   |
   |УПОРЯДОЧИТЬ ПО
   |  СрокГодности";
 
 Запрос.УстановитьПараметр("Склад", Склад);
 Запрос.УстановитьПараметр("Ссылка", Ссылка);
 Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
 
 РезультатЗапроса = Запрос.Выполнить();
 
 Если НЕ РезультатЗапроса.Пустой() Тогда
     
     Отказ = Истина;

     ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

     Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
       
       Сообщить("Недостаточно товара "+ВыборкаДетальныеЗаписи.Номенклатура+ " в количестве "+ВыборкаДетальныеЗаписи.КоличествоОстаток);
       
     КонецЦикла;
     
   КонецЕсли;    
   
 КонецЕсли;

 
КонецПроцедуры
ну так нет в выборке  номенклатуры
источник

b

bakhodirov in 1с программирование
Александр Саламатов
да, только в запросе
Так правильно
источник

b

bakhodirov in 1с программирование
aka Rumik
ну так нет в выборке  номенклатуры
я только учусь😭😭😭, как это исправить
источник

aR

aka Rumik in 1с программирование
в выборку добавить номенклатуру
источник

aR

aka Rumik in 1с программирование
где выбираются только сроки
источник