|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
Shantaram 22.12.20 - 13:06 | В регистре три записи(в процессе отладки).
Простой код: Запрос.Текст = "ВЫБРАТЬ | джс_НоминалыПовторноАктивированныхПодарочныхСертификатов.Регистратор КАК Регистратор |ИЗ | РегистрСведений.джс_НоминалыПовторноАктивированныхПодарочныхСертификатов КАК джс_НоминалыПовторноАктивированныхПодарочныхСертификатов |ГДЕ | ВЫРАЗИТЬ(джс_НоминалыПовторноАктивированныхПодарочныхСертификатов.Регистратор КАК Документ.ЧекККМ) = &Регистратор"; Запрос.УстановитьПараметр("Регистратор", Источник.Ссылка); Результат = Запрос.Выполнить() ; Параметр типа ссылка, физически, в регистре есть запись с таким регистратором. Результ - пустой(). Закоментил условие, через отладчик посмотрел, что выбирается - все записи кроме указанной в параметре. . Регистр подчинен регистратору: Чек ККМ и Реализация товаров услуг. Код выполняется в обработчике подписки на событии ОбработкаПроведения. | ||
mikecool 1 - 22.12.20 - 13:08 | Условие без выразить пробовал? | ||
mikecool 2 - 22.12.20 - 13:09 | иначе - условие неверное, регистратор не тот | ||
Shantaram 3 - 22.12.20 - 13:10 | Дык вообще без условия пробовал - в выборке нету нужной записи, а в регистре есть. | ||
Kassern 4 - 22.12.20 - 13:11 | (2) джс_НоминалыПовторноАктивированныхПодарочныхСертификатов.Регистратор КАК Документ.ЧекККМ дает тебе истину или ложь, не более того Пиши просто джс_НоминалыПовторноАктивированныхПодарочныхСертификатов.Регистратор=&Регистратор | ||
Shantaram 5 - 22.12.20 - 13:11 | Регистратор - тот. Проверял и по коду и по дате.
это мои тестовые документы. Тот ) | ||
Kassern 6 - 22.12.20 - 13:12 | (3) чудес не бывает, открой консоль запросов и воткни туда просто выбор полей из твоего региста без отборов и убедись что там есть нужная тебе строчка | ||
Kassern 7 - 22.12.20 - 13:13 | (6) если будешь убеждать, что строчки нет, сделай скриншот нужной тебе строчки из таблицы и скриншот результата запроса из консоли с текстом запроса | ||
Shantaram 8 - 22.12.20 - 13:36 | (7) - сделаю.
Но уже и так делал: НаборЗаписей = РегистрыСведений.джс_НоминалыПовторноАктивированныхПодарочныхСертификатов.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.регистратор.Установить(Источник.Ссылка);
НаборЗаписей.Прочитать();
Наборзаписей.Количество() = 0
Список регистра:
https://ibb.co/FVt84n1 Результат в консоли запросов: https://ibb.co/2tcFhg2 Параметр: https://ibb.co/Rp6Qkq2 Ну и после выполнения Результат.Пустой() = истина
В консоли отбирается, в процедуре - нет. | ||
ДенисЧ 9 - 22.12.20 - 13:37 | Отсюда вывод. В процедуре ты задаёшь не тот документ | ||
Shantaram 10 - 22.12.20 - 13:39 | Тот
https://ibb.co/b2r8bp6 С таким номером больше нет чеков. И я же этот документ провожу, в обработчик подписки передается переменная Источник - как раз этот чек. | ||
Shantaram 11 - 22.12.20 - 13:40 | (9) Мситка какая-то. Решил на мисту обратиться :-) | ||
Kassern 12 - 22.12.20 - 13:48 | (11) ахахах, я кажись понял в чем твоя проблема)) У тебя поди регистр привязан к документу, а в документе идет автоматическое удаление движений. Ты когда вызываешь свой запрос у тебя данной проводки нет, но после записи она появляется. Никакой мистики мисье | ||
Shantaram 13 - 22.12.20 - 13:55 | (12) Да, привязан. К реализации и ЧекуККМ
но в обоих документах удаление движений установлено Не удалять автоматически. | ||
Shantaram 14 - 22.12.20 - 13:55 | (12) Это первое, что проерил. | ||
Shantaram 15 - 22.12.20 - 13:58 | (12) В обработке проведения документа про , добавленный мной, регистр, разумеется, ни слова - ни строчки. Для этого и создал подписку, что бы не трогать модуль документа. | ||
hhhh 16 - 22.12.20 - 13:59 | (14) проверь ручное удаление движений там | ||
Shantaram 17 - 22.12.20 - 14:08 | (16) Про ручное удаление не в курсе.
Имел в виду какую-то настройку в свойствах документа или обработку проведения? | ||
Kassern 18 - 22.12.20 - 14:13 | (15) подписка привязана к какому событию? | ||
Малыш Джон 19 - 22.12.20 - 14:48 | (8) Запусти два сеанса. В одном, в отладке поставь точку останова на строке Запрос.Выполнить(), останови отладку на этой точке. В другом сеансе в консоли проверь наличие в этот момент записи в регистре. | ||
Shantaram 20 - 22.12.20 - 15:13 | Получается, что ситуация такая:
В из обработке проведения документа вызывается ПодготовитьНаборыЗаписейКРегистрацииДвижений из общего модуля, в которой в транзакции очищаются все движения документа. Соответственно удаляется движение из моего регистра. Не учел того, что типовой функционал поработает и с добавленным регистром. | ||
Kassern 21 - 22.12.20 - 15:23 | (20) как и писал, чудес не бывает... |
|
Список тем форума |