Имя: Пароль:
1C
1С v8
Бух. проводки в УПП
0 Alexander Shevchuck
 
11.10.11
17:28
Добрый день,  напсал модуль проведения документа (см. ниже), нажимаю на кнопку «провести», первый раз  ничего не происходит (иду  Перейти -> журнал  проводок (бухгалтерский учет) там пусто), нажимаю второй, все проводиться по указанному алгоритму, но суммы в проводках вдвое больше чем в строке документа.  Подскажите, пожалуйста, что я не доделал и  как устранить эту ошибку.


Запрос = Новый Запрос;
   Запрос.Текст = "
   |ВЫБРАТЬ
   |      Д.ЭлементНастройкиИмпорта.Организация КАК Организация,
   |   Д.ЭлементНастройкиИмпорта.ТипОпрерацииПриИмпорта КАК ТипИмпорта,
   |    Д.СотрудникОрганизации.Физлицо КАК Сотрудник,
   |    Д.ЭлементНастройкиИмпорта.СтатьяЗатратВ1С КАК СтатьяЗатрат,
   |    Д.ЭлементНастройкиИмпорта.СчетДебет КАК СчетДебет,
   |      Д.ЭлементНастройкиИмпорта.СчетКредит КАК СчетКредит,
   |      ЕСТЬNULL(Д.Сумма,0)  КАК Сумма,
   |    &Валюта КАК Валюта
   |ИЗ
   |    Документ.ИмпортЗарплатыСОракл.Импорт КАК  Д    
   |ГДЕ
   |    (Д.ЭлементНастройкиИмпорта.СчетДебет.Родитель = &СчетДебет) И
   |    (Д.ЭлементНастройкиИмпорта.СчетКредит = &СчетКредит) И
   |    (Ссылка = &Ссылка)
   |";
   Запрос.УстановитьПараметр("Ссылка",    Ссылка);
   Запрос.УстановитьПараметр("СчетДебет",    ПланыСчетов.Хозрасчетный.НайтиПоКоду("81"));
   
   Запрос.УстановитьПараметр("СчетКредит",    ПланыСчетов.Хозрасчетный.НайтиПоКоду("661"));
   Запрос.УстановитьПараметр("Валюта",    Справочники.Валюты.НайтиПоКоду("980"));
   РезультатЗапроса = Запрос.Выполнить();
   Выборка = РезультатЗапроса.Выбрать();
   Пока Выборка.Следующий() Цикл
       Движение = Движения.Хозрасчетный.Добавить();
       Движение.Период    =    Дата;
       Движение.СчетДт    =    Выборка.СчетДебет;
       Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат] = Выборка.СтатьяЗатрат;
       Движение.СчетКт    =    Выборка.СчетКредит;
       Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.РаботникиОрганизации] =  Выборка.Сотрудник;
       Движение.Сумма    =    Выборка.Сумма;
       Движение.Организация = Выборка.Организация;
       Движение.Содержание = Строка(Выборка.ТипИмпорта);
       Движение.НомерЖурнала    = "ЗП";
       Движения.Записать();
   КонецЦикла;
1 Maxus43
 
11.10.11
17:30
ой закидают щас
2 Euguln
 
11.10.11
17:31
(0) Удалять движения автоматически или ОбработкаУдаленияПроведения прописать
3 Alexander Shevchuck
 
11.10.11
17:32
(2)Спасибо попробую
4 Euguln
 
11.10.11
17:34
(3) А вообще правилом хорошего тона является использование типовых механизмов проведения. Открой любой типовой документ.
5 Alexander Shevchuck
 
11.10.11
19:11
(2) Помогло убрать задвоение, большое спасибо. Если можно, подскажите еще, почему при нажатии на кнопку "провести" (это только касательно проводок по регистрам бухгалтерии, по регистрам остатков все проводиться как и должно) первый раз ничего не происходит, второй - проводит, третий - отменяет проведение.