Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Помогите новичку с проводками

Помогите новичку с проводками
Я
   Sizek
 
27.02.20 - 11:25
Вообщем, мне нужно подчистить проводки в которых по Дт сума ровна 0 и количество ровно 1 (по кт пусто), сделав внешнюю обработку. Сделать это нужно так, что бы Дт и Кт поменялись местами (по дт у меня було пусто, а вот по кт у меня то што было в дт). Как-то так :)
 
 
   butterbean
 
1 - 27.02.20 - 11:29
показывай чего уже сам наваял
   Sizek
 
2 - 27.02.20 - 11:49
Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ХозрасчетныйОстатки.Субконто1,
        |    ХозрасчетныйОстатки.Субконто2,
        |    ХозрасчетныйОстатки.Субконто3,
        |    ХозрасчетныйОстатки.Счет,
        |    ХозрасчетныйОстатки.Валюта,
        |    ХозрасчетныйОстатки.НалоговоеНазначение,
        |    ХозрасчетныйОстатки.СуммаОстаток
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Остатки КАК ХозрасчетныйОстатки
        |ГДЕ
        |    ХозрасчетныйОстатки.КоличествоОстаток = 1
        |    И ХозрасчетныйОстатки.СуммаОстаток <= 0";
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Док = Документы.ОперацияБух.СоздатьДокумент();
    док.Дата = ТекущаяДата();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        сТРОКАдВИЖ  = дОК.Движения.Хозрасчетный.Добавить();
        сТРОКАдВИЖ.СчетДт = ПланыСчетов.Хозрасчетный.Вспомогательный; 
        сТРОКАдВИЖ.СчетКт = ВыборкаДетальныеЗаписи.Счет;
        БухгалтерскийУчет.УстановитьСубконто(сТРОКАдВИЖ.СчетКт,сТРОКАдВИЖ.СубконтоКт,1,ВыборкаДетальныеЗаписи.Субконто1);
        БухгалтерскийУчет.УстановитьСубконто(сТРОКАдВИЖ.СчетКт,сТРОКАдВИЖ.СубконтоКт,2,ВыборкаДетальныеЗаписи.Субконто2);
        БухгалтерскийУчет.УстановитьСубконто(сТРОКАдВИЖ.СчетКт,сТРОКАдВИЖ.СубконтоКт,3,ВыборкаДетальныеЗаписи.Субконто3);
        сТРОКАдВИЖ.КоличествоДт = 0;
        сТРОКАдВИЖ.КоличествоКт = 1;     
    КонецЦикла;
    Док.Записать(РежимЗаписиДокумента.Запись);
   Волшебник
 
Модератор
3 - 27.02.20 - 11:50
Вас от сТРОКАдВИЖ  не коробит?
   Sizek
 
4 - 27.02.20 - 11:51
Хотя теперь у меня вот такая вот ошибка :
Редактирование данных этого периода запрещено. Изменения не могут быть записаны...
Но запрет на даты вроде не стоит..
   Sizek
 
5 - 27.02.20 - 11:52
"сТРОКАдВИЖ" случайно получилось, просто не успел поправить, красоту потом наведу, главное что бы работало )
   Волшебник
 
Модератор
6 - 27.02.20 - 11:53
(5) А мне вот кажется, что никогда Вы не наведёте красоту и вечно у Вас будут косяки и глюки. Это судьба.
   Sizek
 
7 - 27.02.20 - 11:55
(6) Так лутче ?
Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ХозрасчетныйОстатки.Субконто1,
        |    ХозрасчетныйОстатки.Субконто2,
        |    ХозрасчетныйОстатки.Субконто3,
        |    ХозрасчетныйОстатки.Счет,
        |    ХозрасчетныйОстатки.Валюта,
        |    ХозрасчетныйОстатки.НалоговоеНазначение,
        |    ХозрасчетныйОстатки.СуммаОстаток
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Остатки КАК ХозрасчетныйОстатки
        |ГДЕ
        |    ХозрасчетныйОстатки.КоличествоОстаток = 1
        |    И ХозрасчетныйОстатки.СуммаОстаток <= 0";
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Док = Документы.ОперацияБух.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        СтрокаДвиж  = дОК.Движения.Хозрасчетный.Добавить();
        СтрокаДвиж.СчетДт = ПланыСчетов.Хозрасчетный.Вспомогательный; 
        СтрокаДвиж.СчетКт = ВыборкаДетальныеЗаписи.Счет;
        БухгалтерскийУчет.УстановитьСубконто(СтрокаДвиж.СчетКт,сТРОКАдВИЖ.СубконтоКт,1,ВыборкаДетальныеЗаписи.Субконто1);
        БухгалтерскийУчет.УстановитьСубконто(СтрокаДвиж.СчетКт,сТРОКАдВИЖ.СубконтоКт,2,ВыборкаДетальныеЗаписи.Субконто2);
        БухгалтерскийУчет.УстановитьСубконто(СтрокаДвиж.СчетКт,сТРОКАдВИЖ.СубконтоКт,3,ВыборкаДетальныеЗаписи.Субконто3);
        СтрокаДвиж.КоличествоДт = 0;
        СтрокаДвиж.КоличествоКт = 1;     
    КонецЦикла;
    Док.Записать(РежимЗаписиДокумента.Запись);
   Волшебник
 
Модератор
8 - 27.02.20 - 11:59
(7) опять есть сТРОКАдВИЖ
И так будет всегда.
   catena
 
9 - 27.02.20 - 12:02
"Но запрет на даты вроде не стоит.." - вроде - это не наш термин. Раз ругается, ищи где.
   Sizek
 
10 - 27.02.20 - 12:05
(8) Возможно, но я пытаюсь стать лучше. Не спорю косяков у меня много, но для этого они и косяки чтобы их исправлять и учиться на них. А Вам, я скажу Спасибо хоть и за такую грубую и в каком то месте оскорбительную критику )))
   Sizek
 
11 - 27.02.20 - 12:55
Проблему решил... Надо было период указать ...
   Ц_У
 
12 - 27.02.20 - 14:51
(8) реверсивное название переменных вместо обфускатора, таБдоК = новыЙ табличныЙдокуменТ (тут должен быть смайлик с воздетыми к небу руками)
   Irbis
 
13 - 27.02.20 - 15:05
>> (7) Так лутче ? 

Русский язык вам этого не простит.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.