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

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