• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

документ в журнале проводки не отображаеться

  • Автор темы tarakan
  • Дата начала
T

tarakan

Здраствуйте!

Я к вам обращаюсь за помощью!

Создовая новый документ для авто сервисса "заказНарядыАкты" в конфигурации 1с 7,7 редакции 4,5(7.70.483).
Я придусмотрел как я думал всё!
Но послего его тестирования. Вскрылась недоработка, решения которой я не знаю!
Суть праблеммы при провидения документа - в журнале операции он отображается но в калонке сумма и содержание пусто. В журнале проводок он вовсе не отображает ни чего!

Я сам только не давно стал изучать 1с и всех тонкостей не знаю!
MD программы можно скачать сдесь
 
H

Hryv

а документ проводится вообще?

1. В документе должна быть установлена птичка "бухгалтерский учет"
2. В модуле документа должна быть процедура ОбработкаПроведения()
3. ОбработкаПроведения() должна создавать проводки и сохранять операцию: (Операция.Записать())
 
K

KiR

я бы еще добавил пункт
4. В обработке проведения Операция.Сумма = ПеременнаяСодержащаяСуммуОперации;
 
T

tarakan

а документ проводится вообще?

1. В документе должна быть установлена птичка "бухгалтерский учет"
2. В модуле документа должна быть процедура ОбработкаПроведения()
3. ОбработкаПроведения() должна создавать проводки и сохранять операцию: (Операция.Записать())


там и так была процедура ОбработкаПроведения() но я всё ровно ещё кое что подделал и вот что получилось:
вроде всё должно работать НО документ ЗаказНарядАкт отображаеться в журнале операции но у него нет ни одной проводки! когда нажимаешь провести он говорит что документ проведён! Но ни одного счёта он при этом не выстовляет!
по это му я как считаю что и из за это в калонке суммы не выстовляеться сумма документа!

Процедура ОбработкаПроведения(ВидыДвижений)

// Проверка заполненности обязательных реквизитов.
Если глВсеРеквизитыДокументаЗаполнены(Контекст,
"Фирма,Склад,Валюта,Контрагент,Договор")=0 Тогда
Возврат;
КонецЕсли;

Если (Склад.РозничныйСклад = 1) Тогда
глНеПроводить(Контекст,"Документ """+ глНазваниеДокументаВЖурнале(Контекст)+""" можно
|оформлять только с оптового склада!");
Возврат;
КонецЕсли;

// Проведение по регистрам оперативного учета.
Если (ПустоеЗначение(ВидыДвижений) = 1) ИЛИ (Найти(ВидыДвижений, "Регистр") <> 0) Тогда
ПроведениеПоРегистрам();

Если СтатусВозврата() = 0 Тогда
Возврат;
КонецЕсли;
КонецЕсли;

Если ДатаДок >= глДатаПоПриказу147 Тогда
СкорретироватьДвиженияПартийПоАвансам();
КонецЕсли;

глПриПроведении(Контекст, ВидыДвижений);

Попытка
Операция.Записать();
Исключение
глНеПроводить(Контекст, ОписаниеОшибки());
КонецПопытки;

КонецПроцедуры //ОбработкаПроведения()

короче проблему это ен решило!

я бы еще добавил пункт
4. В обработке проведения Операция.Сумма = ПеременнаяСодержащаяСуммуОперации;

А вот эту мысль я не совсем понял!
Можно поточнее!???
 
P

puh14

ага - у тебя по сути все движения в другие процедуры выведены, часть из них в глобальнике. весь модуль документа покажи.
и из глобальника глПриПроведении(Контекст, ВидыДвижений);
 
H

Hryv

Судя по коду твой документ не создает проводок, а только движения по регистрам
(хотя точно не известно что делают вызываемые процедуры)

Кинь сюда вот такой скриншот своего документа
 

Вложения

  • ___.JPG
    ___.JPG
    48,9 КБ · Просмотры: 450
V

vbs

За проведение документа ЗаказНарядАкт
отвечает процедура глобального модуля
глПриПроведении, в которой, в свою очередь, вызывается
глЗаполнитьОперациюПроводками
Если переменная ТаблицаПроводок заполнена правильно, то и операция с проводками будет создана корректно, и Сумма операции будет присутствовать
 
T

tarakan

ага - у тебя по сути все движения в другие процедуры выведены, часть из них в глобальнике. весь модуль документа покажи.
и из глобальника глПриПроведении(Контекст, ВидыДвижений);

Вот смотри: глобальный модуль Посмотреть вложение GlobalModyl.txt
И модуль формы Посмотреть вложение ZakazNarydAkt.txt
 
V

vbs

В документе ЗаказНарядАкт
ошибка в модуле формы - вместо переменной
ОблагаетсяЕНВД
надо вставить
_ОблагаетсяЕНВД
и не хватает еще одного
КонецЕсли в процедуре ПриИзмененииСклада
 
V

vbs

И еще проверь, как заполнен реквизит
Фирма.ЮрЛицо.ФормированиеПроводок
 
H

Hryv

tarakan, птички правильно стоят
проверяй тогда саму программу: то что vbs тебе пишет
 
T

tarakan

В документе ЗаказНарядАкт
ошибка в модуле формы - вместо переменной
ОблагаетсяЕНВД
надо вставить
_ОблагаетсяЕНВД
и не хватает еще одного
КонецЕсли в процедуре ПриИзмененииСклада

Я сделаю проще уберу все эти процедуры!
Но веть не в этом праблемма! ты сам это понимаешь!


И еще проверь, как заполнен реквизит
Фирма.ЮрЛицо.ФормированиеПроводок

а вот этот пункт я не совсем понял?
 
V

vbs

У Фирмы есть реквизит ЮрЛицо (Справочник.СвоиЮрЛица), для проведения у этого ЮрЛица должен быть установлен режим формирования проводок
 
T

tarakan

У Фирмы есть реквизит ЮрЛицо (Справочник.СвоиЮрЛица), для проведения у этого ЮрЛица должен быть установлен режим формирования проводок


Так так подожди!
Во первых доукмент Реализация проводиться

А во вторых Где это режим я его найти не могу!??? :) :(
 
V

vbs

За проведение документа ЗаказНарядАкт
отвечает процедура глобального модуля
глПриПроведении, в которой, в свою очередь, вызывается
глЗаполнитьОперациюПроводками
Если переменная ТаблицаПроводок заполнена правильно, то и операция с проводками будет создана корректно, и Сумма операции будет присутствовать
Залезь в отладчик и пройдись по процедуре глПриПроведении
Если не поможет, зашли хотя бы неполную базу (если это не коммерческая тайна), а то возишься уже неделю, а там наверняка все не так сложно :)
 
T

tarakan

:) :)
да!:(
вот ссылка на базу
 
V

vbs

1. В модуле формы ЗаказНарядАкт есть синтаксические ошибки
Для их устранения заменить в тексте процедуры ПриИзмененииСклада()

ОблагаетсяЕНВД на _ОблагаетсяЕНВД

И перед
КонецПроцедуры // ПриИзмененииСклада()
Добавить
КонецЕсли
2. КодОперации в ЗаказНарядАкт не заполнен.
Поскольку у тебя один склад, то процедура ПриИзмененииСклада() ни разу не отрабатывает - а КодОперации устанавливается именно в ней.
Этот код
Если _ОблагаетсяЕНВД = 1 Тогда
КодОперации = глКО.РозничнаяПродажаЕНВД;
Иначе
КодОперации = глКО.РозничнаяПродажа;
КонецЕсли;

стоит перенести в Процедуру ВводНового()
Какой КодОперации поставить - на свое усмотрение. Но именно из-за пустого значения КодОперации не формируется ТаблицаПроводок в глобальном модуле
3. Если уж хотел делать по аналогии с Реализацией (а не с РеализацияРозница - ни одного документа в базе нет и проведение его совсем не такое !)
то измени строку 13025 в глобальном модуле на
ВидДокумента="Реализация";
Проводки будут сформированы по аналогии с Реализацией.
В общем, именно там формируется таблица проводок по документу.
Но, похоже, это не твой случай (проводки явно будут не те).
Попробуй вместо вызова из модуля документа "ЗаказНарядАкт" процедуры ГлПриПроведении
сам написать проводки по типу (это только для примера)

Операция.НоваяПроводка();
Операция.Кредит.Счет = СчетПоКоду(НужныйСчет);
Операция.Кредит.Контрагенты = Контрагент;
Операция.Кредит.Договоры = Договор;
Операция.Сумма = Сумма;
Операция.Записать();

и т.д.
А вот какие счета и субконто задействовать в проводках - это к бухгалтерам, иначе получишь "Вещь в себе"
 
V

vbs

Кстати, и НДС у тебя не считается, если НеЕНВД = 0
 
T

tarakan

Хм.... Всё сделал кроме 2ого пункта я перенёс процедуру!
только не понял где ставить год операции!?и что за код опирации?

Да и последний пункт мне совсем не нравиться!
Ведь формирования проводок и так должна проводиться в глобальном модуле!

Да и я спрашивал у бухгалтера! она сказала что проводки должны быть всё теже что и в ДокументеРеализация.
Как она мне обьяснила что там так же идёт списания товара! и так же идут продажи услуг!
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!