Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
12 Ноя 2018, 22:38
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Программное добавление возврата в отчет продаж  (Прочитано 239 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн serg42

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2018-09-11
  • Сайт: 
  • Профессия: Ученик 1С
Создаю программно документ Отчет о розничных продажах и пытаюсь добавить данные в таблицу возвратов.

Делаю так: создаю отчет, добавляю продажи, добавляю возвраты, записываю с проведением.

Если дата возврата товара та же, что дата отчета (т.е. его купили и вернули в тот же день). При проведении возникает ошибка:

Цитировать
Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ОбработкаПроведения': {ОбщийМодуль.НалоговыйУчетУСН.Модуль(13168)}: Ошибка при вызове метода контекста (Заблокировать): Неверный тип значения: РегистрНакопления.РасходыПриУСН.Партия

В сообщениях:

Цитировать
Документом "Отчет о розничных продажах 0000-000247 от 09.09.2018 23:00:00" было реализовано "Какой-то товар" на "1" ед. меньше, чем возвращается.

Пробовал иначе: добавлял продажи, проводил, добавлял возвраты, проводил. Окно сообщений уже не появлялось, но ошибка вознила та же. Докумет создан и проведен, но без возвратов.

При возврате товара проданного в предыдущей день возникает ошибка:

Цитировать
Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ОбработкаПроведения': {ОбщийМодуль.НалоговыйУчетУСН.Модуль(1044)}: Значение не является значением объектного типа (Метаданные)

При создании документа вручную все проходит нормально. Как решить проблему?

1С:Предприятие 8.3 (8.3.11.3034)
Бухгалтерия предприятия (базовая), редакция 3.0 (3.0.64.54)

Последний раз редактировалось: serg42; 11 Сен 2018, 16:33


Оффлайн LexaK

  • *****
  • Сообщений: 1473
  • РЕПУТАЦИЯ: 413
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
самое простое, возьмите эти два документа Отчет по продажам 1.созданный программно и 2.созданный вручную
и проверьте заполнение по всем полям, в шапке и ТЧ.

при заполнении вручную, отрабатывает куча процедур ПриИзменении... (и др.) которые заполняют скрытые поля документа
при программном заполнении документа эти события ПриИзменении... (и др.) не возникают, поля остаются не заполненными, отсюда могут быть и ошибки
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн serg42

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2018-09-11
  • Сайт: 
  • Профессия: Ученик 1С
Как выяснилось вручную происходить то же самое. Просто до этого я пробывал в уже проведенном документе добавлял.

Если создаешь новый отчет, добавляешь товар и возврат - ошибка. Если вручную добавить в отчет продажу товара и сохранить. А потом открыть добавить возврат. То проводиться. Программно повторить это не получилось.

Таблица Возвраты появилась недавно. Может баг 1С?

Оффлайн Golickoff

  • ****
  • Сообщений: 432
  • РЕПУТАЦИЯ: 47
  • КПД: 11%
  • НЕ Есть Null после шести
  • Регистрация: 2015-02-05
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
вручную происходить то же самое
Цитировать
пробывал
Цитировать
То проводиться.
Может баг 1С?
Вряд ли. Скорее, вы не умеете писать.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

Оффлайн Sy4a

  • **
  • Сообщений: 90
  • РЕПУТАЦИЯ: 17
  • КПД: 19%
  • Регистрация: 2015-07-16
  • Сайт: 
  • Профессия: Программист 1С
Если создаешь новый отчет, добавляешь товар и возврат - ошибка. Если вручную добавить в отчет продажу товара и сохранить. А потом открыть добавить возврат. То проводиться. Программно повторить это не получилось.

Скорее всего некоторые вещи делаются при сохранении документа а не при проведении, либо косяк в том что при проведении движения делаются не в том порядке.
что значит программно повторить не получилось?
Программно просто добавляешь товар, сохраняешь документ, затем проводишь документ. Затем получаешь объект заного только что проведенного документа, добавляешь возврат, сохраняешь, проводишь. (понятно что сохранять, а затем проводить смысла нет, но ктож его знает что у вас там и как понаписано, как минимум попробовать стоит, если пойдет дело то копайте в этом русле).
Исходя из ошибки о блокировке можно попробовать после первого проведения документа (когда продажу товара добавляете) поставить паузу в минуту чтоб наверняка, возможно регламенто что то запускается при проведении,а так как вы дважды проводите возникает ошибка при попытке блокировки заблокированного документа


Оффлайн serg42

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2018-09-11
  • Сайт: 
  • Профессия: Ученик 1С
что значит программно повторить не получилось?
Программно просто добавляешь товар, сохраняешь документ, затем проводишь документ. Затем получаешь объект заного только что проведенного документа, добавляешь возврат, сохраняешь, проводишь.
Я это и делал, ничего не вышло.

Исходя из ошибки о блокировке можно попробовать после первого проведения документа (когда продажу товара добавляете) поставить паузу в минуту чтоб наверняка, возможно регламенто что то запускается при проведении,а так как вы дважды проводите возникает ошибка при попытке блокировки заблокированного документа
Т.е. при проведении что-то может выполняться в отдельном потоке? А как же будет работать групповое проведение, обмен данными?

Объясняю подробно, что происходит.

1 Вариант. Открываю документ Отчет о розничных продажах, добавляю в продажи товар с количество 1 шт и ценой 100рублей. Во вкладке "возвраты" добавляю тот же товар 1шт х 450 руб. Провожу. Ошибка "было реализовано "Какой-то товар" на "1" ед. меньше, чем возвращается.". Если сначала сохранить, а потом провести - то же самое.

2 Вариант. Открываю документ Отчет о розничных продажах, добавляю в продажи товар с количество 1 шт и ценой 100рублей. Сохраняю (можно и провести, разницы нет). Открываю снова. Во вкладке "возвраты" добавляю тот же товар 1шт х 450 руб. Провожу. Всё нормально.

Уточню, что это я делаю в самой 1С, а не программно.

Оффлайн Sy4a

  • **
  • Сообщений: 90
  • РЕПУТАЦИЯ: 17
  • КПД: 19%
  • Регистрация: 2015-07-16
  • Сайт: 
  • Профессия: Программист 1С
2 Вариант. Открываю документ Отчет о розничных продажах, добавляю в продажи товар с количество 1 шт и ценой 100рублей. Сохраняю (можно и провести, разницы нет). Открываю снова. Во вкладке "возвраты" добавляю тот же товар 1шт х 450 руб. Провожу. Всё нормально.
Вот про это я и писал вот это:
после первого проведения документа (когда продажу товара добавляете) поставить паузу в минуту чтоб наверняка, возможно регламенто что то запускается при проведении,а так как вы дважды проводите возникает ошибка при попытке блокировки заблокированного документа
То есть раз система не дает вам одновременно провести продажи и возврат, а по очери даёт, значит что то система делает после проведении продажи.
Попробуйте программно написать 1 кнопку на добавление строчки в документ продажи товара и еще 1 кнопку на добавление в документ возврата. И нажать сначало 1 как отвиснет сразу 2.
если будет ошибка после нажатия 2 кнопки тогда, нажимаем 1 кнопку идем курить или пить чай приходим и нажимаем 2 кнопку, если ошибок не будет значит как я и писал что то выполняется фоного не в том видимо порядке или вообще пытается сделать это одновременно.

А как же будет работать групповое проведение, обмен данными?
Ну исходя из ошибок то ни как не будет :). Если документ типовой и вы внутри него ничего не меняли, то возможно и косяк 1Сников, ещё на всякий случай посмотрите может у вас есть какиенито подписки на события этого документа, которые вам всё и ломают. А также посмотрите по журналу регистрации что происходит после сохранеия (без проведения не проведенного документа).

Оффлайн serg42

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2018-09-11
  • Сайт: 
  • Профессия: Ученик 1С
Получил ответ от техподдержки 1С: "Это проявление ошибки 10197456."


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

wise wise
58 Сообщений
oleg-x
54 Сообщений
AIFrame AIFrame
52 Сообщений
alexandr_ll
46 Сообщений
alex0402
44 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
42 Сообщений
LexaK
31 Сообщений
BuhRust
29 Сообщений
andron81_81
24 Сообщений
MuI_I_Ika MuI_I_Ika
22 Сообщений

* Кто онлайн

  • Точка Гостей: 251
  • Точка Скрытых: 0
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal