|
как проверить товар, на выводимые сообщения при проведении документа | ☑ | ||
---|---|---|---|---|
0
falselight
27.07.16
✎
15:11
|
Конфигурация Розница.
При проведении поступления товаров выходят сообщения, на товар в табличной части: Инвентарный товар (563) уже присутствует на складе ООО 40б. Повторное оприходование невозможно. При проведении документа отчет о розничных продажах выходят сообщения, типа: Номенклатура IM Превышен сводный остаток на складе ООО , на 1 шт. При проведении данных документов в обработке, как можно получая номенклатуру узнавать - Присутствует ли она на складе, если да что бы удалить из табличной части документа. Что бы это не мешало проведению? - И превышает ли она свободный остаток, что бы её оприходовать заранее, для корректного проведения документа? Эти сообщения выводятся при проведении. Но получая номенклатуру из тч, как это определить? Есть специальные функции? |
|||
1
Поросенок Петр
27.07.16
✎
15:25
|
А откуда взялись документы с лишними товарами в тч?
|
|||
2
arccos6pi
27.07.16
✎
15:34
|
(0) нужно просто поставить учет нормально
|
|||
3
FIXXXL
27.07.16
✎
17:11
|
(0) ну глянь как проверяется номенклатура при проведении, откуда сообщения сыпятся
|
|||
4
falselight
28.07.16
✎
08:12
|
(3) а где вероятнее всего это может быть?
Начал смотреть обработку проведения в модуле документа. |
|||
5
Горогуля
28.07.16
✎
08:15
|
откуда запятая взялась в заголовке? ну нельзя же их ставить рандомно, я верю в людей
|
|||
6
falselight
28.07.16
✎
08:24
|
по тексту сообщения нащел в одном модуле эту процедуру, которая формирует сообщения
|
|||
7
Горогуля
28.07.16
✎
08:26
|
(6) уже поздравлять?
|
|||
8
Горогуля
28.07.16
✎
08:26
|
>При проведении данных документов в обработке, как можно получая номенклатуру узнавать
извини меня, но русский язык - это не твоё |
|||
9
falselight
28.07.16
✎
09:02
|
Как у проведенного документа может быть, проведение=Истина???
Пробую на одном документе. Он не проведет. При проведении заходит в процедуру где формируются эти сообщения. Но там проверяются Источник.Движения.ТоварыНаСкладах. От куда у него движения если он не проведен в тч. Хотя по свойствам проведен. Когда программно провлжу документ, он то точно не проведет. И движений нет, по этому как его можно проверить????? От куда движения у этого не проведеного документа? |
|||
10
falselight
28.07.16
✎
09:02
|
(9) Как у НЕ проведенного документа может быть, проведение=Истина???
|
|||
11
Горогуля
28.07.16
✎
09:03
|
(10) проведён - это такая галка в БД
(9) это просто чудо |
|||
12
vicof
28.07.16
✎
09:09
|
(11) Это не чудо, это @Livingstar
|
|||
13
falselight
28.07.16
✎
09:18
|
почему то именно в этой процедуре можно передать параметром
в запрос движения документа, и он значится как проведенный но на самом деле он не проведен, и когда я вызываю эту процедуру из обработки, так же ничего не выбирается Процедура ВыполнитьКонтрольОстатковИнвентарныхТоваров(Источник, Отказ, РежимПроведения) Экспорт // Формируем шаблон сообщения об ошибке ШаблонСообщения = НСтр("ru = 'Инвентарный товар %1 уже присутствует на складе %2. Повторное оприходование невозможно.'"); // При оприходывании инвентарного товара на склад необходимо проверить, а не имеется ли он уже на складе ТекстЗапроса = "ВЫБРАТЬ | ДвиженияТоварыНаСкладах.ВидДвижения, | ДвиженияТоварыНаСкладах.Склад, | ВЫРАЗИТЬ(ДвиженияТоварыНаСкладах.Номенклатура КАК Справочник.Номенклатура) КАК Номенклатура, | ВЫРАЗИТЬ(ДвиженияТоварыНаСкладах.Характеристика КАК Справочник.ХарактеристикиНоменклатуры) КАК Характеристика, | ДвиженияТоварыНаСкладах.Количество |ПОМЕСТИТЬ ДвиженияТоварыНаСкладах |ИЗ | &ТоварыНаСкладах КАК ДвиженияТоварыНаСкладах |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗЛИЧНЫЕ | ДвиженияТоварыНаСкладах.Номенклатура, | ДвиженияТоварыНаСкладах.Характеристика |ПОМЕСТИТЬ ТаблицаПоТоварам |ИЗ | ДвиженияТоварыНаСкладах КАК ДвиженияТоварыНаСкладах |ГДЕ | ДвиженияТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) | И ДвиженияТоварыНаСкладах.Номенклатура.ВидНоменклатуры.ор_ИнвентарныйУчет | И НЕ ДвиженияТоварыНаСкладах.Характеристика = Значение(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ДвиженияТоварыНаСкладах.ВидДвижения, | ДвиженияТоварыНаСкладах.Склад, | ДвиженияТоварыНаСкладах.Номенклатура, | ДвиженияТоварыНаСкладах.Характеристика, | ДвиженияТоварыНаСкладах.Количество |ИЗ | ДвиженияТоварыНаСкладах КАК ДвиженияТоварыНаСкладах |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТаблицаПоТоварам.Номенклатура, | ТаблицаПоТоварам.Характеристика |ИЗ | ТаблицаПоТоварам КАК ТаблицаПоТоварам |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТоварыНаСкладахОстатки.Склад, | ТоварыНаСкладахОстатки.Номенклатура, | ТоварыНаСкладахОстатки.Характеристика, | ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток |ИЗ | ТаблицаПоТоварам КАК ТаблицаПоТоварам | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки( | , | (Номенклатура, Характеристика) В | (ВЫБРАТЬ | ТаблицаПоТоварам.Номенклатура, | ТаблицаПоТоварам.Характеристика | ИЗ | ТаблицаПоТоварам КАК ТаблицаПоТоварам)) КАК ТоварыНаСкладахОстатки | ПО ТаблицаПоТоварам.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура | И ТаблицаПоТоварам.Характеристика = ТоварыНаСкладахОстатки.Характеристика |ГДЕ | ТоварыНаСкладахОстатки.КоличествоОстаток > 1"; Запрос = Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("ТоварыНаСкладах", Источник.Движения.ТоварыНаСкладах); // Выполняем запрос и информируем пользователя о найденных ошибках Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ШаблонСообщения, ФормированиеПечатныхФормСервер.ПолучитьПредставлениеНоменклатурыДляПечати(Выборка.Номенклатура, Выборка.Характеристика), Строка(Выборка.Склад) ); ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, Источник,,, Отказ); КонецЦикла; КонецПроцедуры // ВыполнитьКонтрольОстатковИнвентарныхТоваров() |
|||
14
falselight
28.07.16
✎
09:20
|
(13+) это можно сделать только при записи документа
вызывая это из обработки у документа нет никаких движений |
|||
15
Горогуля
28.07.16
✎
09:22
|
(12) опять? да сколько ж можно?
|
|||
16
mehfk
28.07.16
✎
09:22
|
(12) Если это действительно Livingstar, то за время, пока его не было на мисте он значительно деградировал.
|
|||
17
Горогуля
28.07.16
✎
09:22
|
||||
18
falselight
28.07.16
✎
09:26
|
вызывается эта процедура (13) подпиской на событие обработка проведения, и там есть движения документа, как это можно использовать из обработки?
|
|||
19
Lexey_
28.07.16
✎
09:29
|
(16) да, это он. "за время, пока его не было" он был: 1cstudy
|
|||
20
mehfk
28.07.16
✎
09:30
|
(19) В курсе. Но его уже тоже относительно давно забанили.
|
|||
21
mehfk
28.07.16
✎
09:32
|
Может он как проколотое колесо? Если его не подкачивать, то сдувается до нуля :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |