Бухгалтерский учет, налогообложение, отчетность, МСФО, анализ бухгалтерской информации, 1С:Бухгалтерия

Форум

Развернуть все [1С:Предприятие 7.7] Товарный отчет
BigAnn
Пост №1
BigAnn
читатель
офлайн
Дата регистрации: 02.10.2008
Сообщений: 56
Пост №1
 
28.04.2011 11:48

"Всем доброго дня.
Имеется Бухгалтерия 7.7 обычная (не УСН).
Конфигурацию дорабатывали. В ней есть Товарный отчет.
Писала не сама, лорабатываю. До этого отчет группировал строки по контрагенту и выводил общую сумму.
Исходный отчет http://depositfiles.com/files/q4vmlt568

Товарный
отчет (немного исправленный):

Код

Процедура Сформировать()
Сч =0;
Док = СоздатьОбъект("Документ");
Оп = СоздатьОбъект("Операция");

ТабПеч = СоздатьОбъект("Таблица");
ТабПеч.ИсходнаяТаблица("Таблица");

ТабПрих = СоздатьОбъект("ТаблицаЗначений");
ТабПрих.НоваяКолонка("КтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("ДтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("Документ","Документ");
ТабПрих.НоваяКолонка("Контрагент","Строка");
ТабПрих.НоваяКолонка("Тара","Число",12,3);
ТабПрих.НоваяКолонка("Сумма","Число",12,3);


ТабПрих_ = СоздатьОбъект("ТаблицаЗначений");
ТабПрих_.НоваяКолонка("Документ","Документ");
ТабПрих_.НоваяКолонка("Контрагент","Строка");
ТабПрих_.НоваяКолонка("Товар","Число",12,3);
ТабПрих_.НоваяКолонка("Наценка","Число",12,3);
ТабПрих_.НоваяКолонка("Тара","Число",12,3);
ТабПрих_.НоваяКолонка("Издержки","Число",12,3);

ТабРасх = СоздатьОбъект("ТаблицаЗначений");
ТабРасх.НоваяКолонка("КтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("ДтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("Документ","Документ");
ТабРасх.НоваяКолонка("Контрагент","Строка");
ТабРасх.НоваяКолонка("Сумма","Число",12,3);

ТабРасх_ = СоздатьОбъект("ТаблицаЗначений");
ТабРасх_.НоваяКолонка("Документ","Документ");
ТабРасх_.НоваяКолонка("Контрагент","Строка");
ТабРасх_.НоваяКолонка("Товар","Число",12,3);
ТабРасх_.НоваяКолонка("Наценка","Число",12,3);
ТабРасх_.НоваяКолонка("Тара","Число",12,3);

Сч41_2 = СчетПоКоду("41.2");
Сч41_3 = СчетПоКоду("41.3");
Сч42 = СчетПоКоду("42");
Сч44_1_2 = СчетПоКоду("44.1.2");
Сч50_1 = СчетПоКоду("50.1");
Сч60_1 = СчетПоКоду("60.1");      
Сч90_1_2 = СчетПоКоду("90.1.2");
Сч70 = СчетПоКоду("70");

БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВключатьСубСчета(1);

БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);

НачСдТовар = 0;
НачСдТара = 0;
КонСдТовар = 0;

ОстатокПоКассеН = 0;//
ОстатокПоКассеК = 0;//

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");

ОстатокПоКассеН = БухИт.СНД();
ОстатокПоКассеК = БухИт.СКД();

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2","60.1,90.1.2,42,41.2", , 1, "Период", "СВ"); //
БухС = СоздатьОбъект("БухгалтерскиеИтоги");
БухС.Рассчитать(НачПериод,НачПериод);
НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2)- БухС.СНКРС("41.2",1,,,3,МестоХранения,2)+ОстатокПоКассеН;
//НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2) + ОстатокПоКассеН;
НачСдТара = БухС.СНДРС("41.3",1,,,3,МестоХранения,2);;
БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2,41.3",, , 1, "Операция", "СВ");

БухИт.ВыбратьПериоды();

// Приходная часть товарного отчета

ТабПеч.ВывестиСекцию("Шапка");
ТабПеч.ВывестиСекцию("ШапкаПрихода");

Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Дт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);
//Сообщить(Строка(Док.Вид())+" "+Строка(Док.НомерДок));
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);
Пока Оп.ПолучитьПроводку()=1 Цикл
ТабПрих.НоваяСтрока();
ТабПрих.КтСчета = Оп.Кредит.Счет;
ТабПрих.ДтСчета = Оп.Дебет.Счет;
Если Оп.Кредит.Счет = Сч60_1 Тогда
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(1)));
Иначе
Попытка
ТабПрих.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
Если Док.Вид() = "ПеремещениеТоваровСык" Тогда
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
ТабПрих.ДтСчета = Оп.Дебет.Счет;
ТабПрих.КтСчета = Сч60_1;                  
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(2)));
КонецЕсли;            
КонецЕсли;
ТабПрих.Сумма = Оп.Сумма;
КонецЦикла;
КонецЦикла;

//ТабПрих.Свернуть("КтСчета,ДтСчета,Контрагент","Сумма");
//ТабПрих.Сортировать("+Контрагент");

ТабПрих.ВыбратьСтроки();
Сч = 0;
Пока ТабПрих.ПолучитьСтроку() = 1 Цикл
Если ТабПрих.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабПрих_.НайтиЗначение(ТабПрих.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабПрих_.НоваяСтрока();
ТабПрих_.Контрагент = ТабПрих.Контрагент;
Иначе
ТабПрих_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабПрих.КтСчета = Сч60_1 Тогда
Если ТабПрих.ДтСчета = Сч41_2 Тогда
ТабПрих_.Товар = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч44_1_2 Тогда
ТабПрих_.Издержки = ТабПрих.Сумма;
КонецЕсли;
ИначеЕсли ТабПрих.КтСчета = Сч42 Тогда
ТабПрих_.Наценка = ТабПрих.Сумма;
ИначеЕсли ТабПрих.КтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;

КонецЕсли;
Сч=Сч+1;
ТабПеч.ВывестиСекцию("СтрокаПриход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоПриход");


// Расходная часть товарного отчета


БухИт.ВыбратьПериоды();
Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Кт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);      
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);      

Пока Оп.ПолучитьПроводку()=1 Цикл
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
Продолжить;
КонецЕсли;
ТабРасх.НоваяСтрока();
ТабРасх.КтСчета = Оп.Кредит.Счет;
ТабРасх.ДтСчета = Оп.Дебет.Счет;
Если Оп.Дебет.Счет = Сч60_1 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Оп.Дебет.Субконто(1)));
ИначеЕсли Оп.Дебет.Счет = Сч42 Тогда
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;            
ИначеЕсли Оп.Дебет.Счет = Сч41_2 Тогда
Если Док.Вид() = "СписаниеТоваров" Тогда
ТабРасх.Контрагент = "Списание";
Иначе
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
КонецЕсли;
ИначеЕсли Оп.Дебет.Счет = Сч41_3 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
ИначеЕсли Оп.Дебет.Счет = Сч50_1 Тогда
ТабРасх.Контрагент = "Сдача выручки";
ИначеЕсли Оп.Дебет.Счет = Сч70 Тогда
ТабРасх.Контрагент = "Выдача зарплаты";
Иначе
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
ТабРасх.Сумма = Оп.Сумма;
КонецЦикла;

КонецЦикла;

//ТабРасх.Свернуть("ДтСчета,КтСчета,Контрагент","Сумма");
//ТабРасх.Сортировать("+Контрагент");

БухК = СоздатьОбъект("БухгалтерскиеИтоги");
БухК.ИспользоватьСубконто("ДвиженияДенежныхСредств");
БухК.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухК.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");
БухК.ВыбратьСубконто();
Пока БухК.ПолучитьСубконто() = 1 Цикл
Если БухК.КО() > 0 Тогда
ТабРасх.НоваяСтрока();
ТабРасх.ДтСчета = Сч90_1_2;
ТабРасх.КтСчета = Сч41_2;
ТабРасх.Контрагент = СокрЛП(Строка(БухК.Субконто()));
ТабРасх.Сумма = Число(БухК.КО());
КонецЕсли;
КонецЦикла;

ТабРасх.ВыбратьСтроки();
ТабПеч.ВывестиСекцию("ШапкаРасхода");
Сч=0;
Пока ТабРасх.ПолучитьСтроку() = 1 Цикл
Если ТабРасх.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабРасх_.НайтиЗначение(ТабРасх.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабРасх_.НоваяСтрока();
ТабРасх_.Контрагент = ТабРасх.Контрагент;
Иначе
ТабРасх_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабРасх.КтСчета = Сч41_2 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч70 Тогда            
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч90_1_2 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
//ТабРасх_.Товар = КассаКО;
ИначеЕсли (ТабРасх.ДтСчета = Сч41_2) Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_2) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
ИначеЕсли ТабРасх.ДтСчета = Сч50_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;      
КонецЕсли;
ИначеЕсли ТабРасх.КтСчета = Сч41_3 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;

ИначеЕсли (ТабРасх.ДтСчета) = Сч41_3 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_3) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
КонецЕсли;
КонецЕсли;

Сч = Сч+1;
ТабПеч.ВывестиСекцию("СтрокаРасход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоРасход");

////////////////////////////
//ТабПрих_.ВыбратьСтроки();
//Пока ТабПрих_.ПолучитьСтроку() = 1 Цикл
// Сч=Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаПриход");
//КонецЦикла;
//ТабПеч.ВывестиСекцию("ИтогоПриход");

//ТабПеч.ВывестиСекцию("ШапкаРасхода");
//ТабРасх_.ВыбратьСтроки();
//Сч=0;
//Пока ТабРасх_.ПолучитьСтроку() = 1 Цикл
// Сч = Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаРасход");
//КонецЦикла;      
//ТабПеч.ВывестиСекцию("ИтогоРасход");

ТабПеч.ВывестиСекцию("КонОстаток");                  
ТабПеч.ВывестиСекцию("Подвал");
//ТабПеч.Защита(1);
ТабПеч.Опции(0,,,,,,,);
ТабПеч.Показать("Товарный отчет " + Строка(НачПериод) + " - " + Строка(КонПериод));
КонецПроцедуры

// преодпределенные процедуры
Процедура ПриОткрытии()
НачПериод = НачНедели(РабочаяДата());
КонПериод = КонНедели(РабочаяДата());
МестоХранения = константа.ОсновнойСклад;
КонецПроцедуры


Сделала вот так. Теперь выводит каждую строку документа. Причем в разном сочетании. Например:
Документ Поступление товара содержит
1. Товар 1 шт. цена опт. - 30 руб., цена с наценкой - 60 руб., сумма опт. - 30 руб. , наценка - 30 руб., всего - 60 руб.
2. Тара 1 шт. цена опт. - 20 руб., цена с наценкой - 20 руб., сумма опт. - 20 руб. , наценка - 0 руб., всего - 20 руб.
3. транспортные расходы 1 шт. цена опт. - 200 руб., цена с наценкой - 200 руб., сумма опт. - 200 руб. , наценка - 0 руб., всего - 200 руб.

В отчете выводится так:
Контрагент Товар Тара Наценка
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 30.00 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 60.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 230.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 200.00 20.00

Как сделать группировку по документу?
Спасибо.Всем доброго дня.
Имеется Бухгалтерия 7.7 обычная (не УСН).
Конфигурацию дорабатывали. В ней есть Товарный отчет.
Писала не сама, лорабатываю. До этого отчет группировал строки по контрагенту и выводил общую сумму.
Исходный отчет http://depositfiles.com/files/q4vmlt568

Товарный
отчет (немного исправленный):
Код

Процедура Сформировать()
Сч =0;
Док = СоздатьОбъект("Документ");
Оп = СоздатьОбъект("Операция");

ТабПеч = СоздатьОбъект("Таблица");
ТабПеч.ИсходнаяТаблица("Таблица");

ТабПрих = СоздатьОбъект("ТаблицаЗначений");
ТабПрих.НоваяКолонка("КтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("ДтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("Документ","Документ");
ТабПрих.НоваяКолонка("Контрагент","Строка");
ТабПрих.НоваяКолонка("Тара","Число",12,3);
ТабПрих.НоваяКолонка("Сумма","Число",12,3);


ТабПрих_ = СоздатьОбъект("ТаблицаЗначений");
ТабПрих_.НоваяКолонка("Документ","Документ");
ТабПрих_.НоваяКолонка("Контрагент","Строка");
ТабПрих_.НоваяКолонка("Товар","Число",12,3);
ТабПрих_.НоваяКолонка("Наценка","Число",12,3);
ТабПрих_.НоваяКолонка("Тара","Число",12,3);
ТабПрих_.НоваяКолонка("Издержки","Число",12,3);

ТабРасх = СоздатьОбъект("ТаблицаЗначений");
ТабРасх.НоваяКолонка("КтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("ДтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("Документ","Документ");
ТабРасх.НоваяКолонка("Контрагент","Строка");
ТабРасх.НоваяКолонка("Сумма","Число",12,3);

ТабРасх_ = СоздатьОбъект("ТаблицаЗначений");
ТабРасх_.НоваяКолонка("Документ","Документ");
ТабРасх_.НоваяКолонка("Контрагент","Строка");
ТабРасх_.НоваяКолонка("Товар","Число",12,3);
ТабРасх_.НоваяКолонка("Наценка","Число",12,3);
ТабРасх_.НоваяКолонка("Тара","Число",12,3);

Сч41_2 = СчетПоКоду("41.2");
Сч41_3 = СчетПоКоду("41.3");
Сч42 = СчетПоКоду("42");
Сч44_1_2 = СчетПоКоду("44.1.2");
Сч50_1 = СчетПоКоду("50.1");
Сч60_1 = СчетПоКоду("60.1");      
Сч90_1_2 = СчетПоКоду("90.1.2");
Сч70 = СчетПоКоду("70");

БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВключатьСубСчета(1);

БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);

НачСдТовар = 0;
НачСдТара = 0;
КонСдТовар = 0;

ОстатокПоКассеН = 0;//
ОстатокПоКассеК = 0;//

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");

ОстатокПоКассеН = БухИт.СНД();
ОстатокПоКассеК = БухИт.СКД();

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2","60.1,90.1.2,42,41.2", , 1, "Период", "СВ"); //
БухС = СоздатьОбъект("БухгалтерскиеИтоги");
БухС.Рассчитать(НачПериод,НачПериод);
НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2)- БухС.СНКРС("41.2",1,,,3,МестоХранения,2)+ОстатокПоКассеН;
//НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2) + ОстатокПоКассеН;
НачСдТара = БухС.СНДРС("41.3",1,,,3,МестоХранения,2);;
БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2,41.3",, , 1, "Операция", "СВ");

БухИт.ВыбратьПериоды();

// Приходная часть товарного отчета

ТабПеч.ВывестиСекцию("Шапка");
ТабПеч.ВывестиСекцию("ШапкаПрихода");

Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Дт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);
//Сообщить(Строка(Док.Вид())+" "+Строка(Док.НомерДок));
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);
Пока Оп.ПолучитьПроводку()=1 Цикл
ТабПрих.НоваяСтрока();
ТабПрих.КтСчета = Оп.Кредит.Счет;
ТабПрих.ДтСчета = Оп.Дебет.Счет;
Если Оп.Кредит.Счет = Сч60_1 Тогда
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(1)));
Иначе
Попытка
ТабПрих.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
Если Док.Вид() = "ПеремещениеТоваровСык" Тогда
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
ТабПрих.ДтСчета = Оп.Дебет.Счет;
ТабПрих.КтСчета = Сч60_1;                  
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(2)));
КонецЕсли;            
КонецЕсли;
ТабПрих.Сумма = Оп.Сумма;
КонецЦикла;
КонецЦикла;

//ТабПрих.Свернуть("КтСчета,ДтСчета,Контрагент","Сумма");
//ТабПрих.Сортировать("+Контрагент");

ТабПрих.ВыбратьСтроки();
Сч = 0;
Пока ТабПрих.ПолучитьСтроку() = 1 Цикл
Если ТабПрих.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабПрих_.НайтиЗначение(ТабПрих.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабПрих_.НоваяСтрока();
ТабПрих_.Контрагент = ТабПрих.Контрагент;
Иначе
ТабПрих_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабПрих.КтСчета = Сч60_1 Тогда
Если ТабПрих.ДтСчета = Сч41_2 Тогда
ТабПрих_.Товар = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч44_1_2 Тогда
ТабПрих_.Издержки = ТабПрих.Сумма;
КонецЕсли;
ИначеЕсли ТабПрих.КтСчета = Сч42 Тогда
ТабПрих_.Наценка = ТабПрих.Сумма;
ИначеЕсли ТабПрих.КтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;

КонецЕсли;
Сч=Сч+1;
ТабПеч.ВывестиСекцию("СтрокаПриход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоПриход");


// Расходная часть товарного отчета


БухИт.ВыбратьПериоды();
Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Кт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);      
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);      

Пока Оп.ПолучитьПроводку()=1 Цикл
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
Продолжить;
КонецЕсли;
ТабРасх.НоваяСтрока();
ТабРасх.КтСчета = Оп.Кредит.Счет;
ТабРасх.ДтСчета = Оп.Дебет.Счет;
Если Оп.Дебет.Счет = Сч60_1 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Оп.Дебет.Субконто(1)));
ИначеЕсли Оп.Дебет.Счет = Сч42 Тогда
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;            
ИначеЕсли Оп.Дебет.Счет = Сч41_2 Тогда
Если Док.Вид() = "СписаниеТоваров" Тогда
ТабРасх.Контрагент = "Списание";
Иначе
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
КонецЕсли;
ИначеЕсли Оп.Дебет.Счет = Сч41_3 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
ИначеЕсли Оп.Дебет.Счет = Сч50_1 Тогда
ТабРасх.Контрагент = "Сдача выручки";
ИначеЕсли Оп.Дебет.Счет = Сч70 Тогда
ТабРасх.Контрагент = "Выдача зарплаты";
Иначе
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
ТабРасх.Сумма = Оп.Сумма;
КонецЦикла;

КонецЦикла;

//ТабРасх.Свернуть("ДтСчета,КтСчета,Контрагент","Сумма");
//ТабРасх.Сортировать("+Контрагент");

БухК = СоздатьОбъект("БухгалтерскиеИтоги");
БухК.ИспользоватьСубконто("ДвиженияДенежныхСредств");
БухК.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухК.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");
БухК.ВыбратьСубконто();
Пока БухК.ПолучитьСубконто() = 1 Цикл
Если БухК.КО() > 0 Тогда
ТабРасх.НоваяСтрока();
ТабРасх.ДтСчета = Сч90_1_2;
ТабРасх.КтСчета = Сч41_2;
ТабРасх.Контрагент = СокрЛП(Строка(БухК.Субконто()));
ТабРасх.Сумма = Число(БухК.КО());
КонецЕсли;
КонецЦикла;

ТабРасх.ВыбратьСтроки();
ТабПеч.ВывестиСекцию("ШапкаРасхода");
Сч=0;
Пока ТабРасх.ПолучитьСтроку() = 1 Цикл
Если ТабРасх.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабРасх_.НайтиЗначение(ТабРасх.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабРасх_.НоваяСтрока();
ТабРасх_.Контрагент = ТабРасх.Контрагент;
Иначе
ТабРасх_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабРасх.КтСчета = Сч41_2 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч70 Тогда            
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч90_1_2 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
//ТабРасх_.Товар = КассаКО;
ИначеЕсли (ТабРасх.ДтСчета = Сч41_2) Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_2) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
ИначеЕсли ТабРасх.ДтСчета = Сч50_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;      
КонецЕсли;
ИначеЕсли ТабРасх.КтСчета = Сч41_3 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;

ИначеЕсли (ТабРасх.ДтСчета) = Сч41_3 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_3) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
КонецЕсли;
КонецЕсли;

Сч = Сч+1;
ТабПеч.ВывестиСекцию("СтрокаРасход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоРасход");

////////////////////////////
//ТабПрих_.ВыбратьСтроки();
//Пока ТабПрих_.ПолучитьСтроку() = 1 Цикл
// Сч=Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаПриход");
//КонецЦикла;
//ТабПеч.ВывестиСекцию("ИтогоПриход");

//ТабПеч.ВывестиСекцию("ШапкаРасхода");
//ТабРасх_.ВыбратьСтроки();
//Сч=0;
//Пока ТабРасх_.ПолучитьСтроку() = 1 Цикл
// Сч = Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаРасход");
//КонецЦикла;      
//ТабПеч.ВывестиСекцию("ИтогоРасход");

ТабПеч.ВывестиСекцию("КонОстаток");                  
ТабПеч.ВывестиСекцию("Подвал");
//ТабПеч.Защита(1);
ТабПеч.Опции(0,,,,,,,);
ТабПеч.Показать("Товарный отчет " + Строка(НачПериод) + " - " + Строка(КонПериод));
КонецПроцедуры

// преодпределенные процедуры
Процедура ПриОткрытии()
НачПериод = НачНедели(РабочаяДата());
КонПериод = КонНедели(РабочаяДата());
МестоХранения = константа.ОсновнойСклад;
КонецПроцедуры


Сделала вот так. Теперь выводит каждую строку документа. Причем в разном сочетании. Например:
Документ Поступление товара содержит
1. Товар 1 шт. цена опт. - 30 руб., цена с наценкой - 60 руб., сумма опт. - 30 руб. , наценка - 30 руб., всего - 60 руб.
2. Тара 1 шт. цена опт. - 20 руб., цена с наценкой - 20 руб., сумма опт. - 20 руб. , наценка - 0 руб., всего - 20 руб.
3. транспортные расходы 1 шт. цена опт. - 200 руб., цена с наценкой - 200 руб., сумма опт. - 200 руб. , наценка - 0 руб., всего - 200 руб.

В отчете выводится так:
Контрагент Товар Тара Наценка
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 30.00 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 60.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 230.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 200.00 20.00

Как сделать группировку по документу?
Спасибо."

 
BigAnn
Пост №1
28.04.2011 11:48
 

"Всем доброго дня.
Имеется Бухгалтерия 7.7 обычная (не УСН).
Конфигурацию дорабатывали. В ней есть Товарный отчет.
Писала не сама, лорабатываю. До этого отчет группировал строки по контрагенту и выводил общую сумму.
Исходный отчет http://depositfiles.com/files/q4vmlt568

Товарный отчет (немного исправленный):
[code]
Процедура Сформировать()
Сч =0;
Док = СоздатьОбъект("Документ");
Оп = СоздатьОбъект("Операция");

ТабПеч = СоздатьОбъект("Таблица");
ТабПеч.ИсходнаяТаблица("Таблица");

ТабПрих = СоздатьОбъект("ТаблицаЗначений");
ТабПрих.НоваяКолонка("КтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("ДтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("Документ","Документ");
ТабПрих.НоваяКолонка("Контрагент","Строка");
ТабПрих.НоваяКолонка("Тара","Число",12,3);
ТабПрих.НоваяКолонка("Сумма","Число",12,3);


ТабПрих_ = СоздатьОбъект("ТаблицаЗначений");
ТабПрих_.НоваяКолонка("Документ","Документ");
ТабПрих_.НоваяКолонка("Контрагент","Строка");
ТабПрих_.НоваяКолонка("Товар","Число",12,3);
ТабПрих_.НоваяКолонка("Наценка","Число",12,3);
ТабПрих_.НоваяКолонка("Тара","Число",12,3);
ТабПрих_.НоваяКолонка("Издержки","Число",12,3);

ТабРасх = СоздатьОбъект("ТаблицаЗначений");
ТабРасх.НоваяКолонка("КтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("ДтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("Документ","Документ");
ТабРасх.НоваяКолонка("Контрагент","Строка");
ТабРасх.НоваяКолонка("Сумма","Число",12,3);

ТабРасх_ = СоздатьОбъект("ТаблицаЗначений");
ТабРасх_.НоваяКолонка("Документ","Документ");
ТабРасх_.НоваяКолонка("Контрагент","Строка");
ТабРасх_.НоваяКолонка("Товар","Число",12,3);
ТабРасх_.НоваяКолонка("Наценка","Число",12,3);
ТабРасх_.НоваяКолонка("Тара","Число",12,3);

Сч41_2 = СчетПоКоду("41.2");
Сч41_3 = СчетПоКоду("41.3");
Сч42 = СчетПоКоду("42");
Сч44_1_2 = СчетПоКоду("44.1.2");
Сч50_1 = СчетПоКоду("50.1");
Сч60_1 = СчетПоКоду("60.1");      
Сч90_1_2 = СчетПоКоду("90.1.2");
Сч70 = СчетПоКоду("70");

БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВключатьСубСчета(1);

БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);

НачСдТовар = 0;
НачСдТара = 0;
КонСдТовар = 0;

ОстатокПоКассеН = 0;//
ОстатокПоКассеК = 0;//

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");

ОстатокПоКассеН = БухИт.СНД();
ОстатокПоКассеК = БухИт.СКД();

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2","60.1,90.1.2,42,41.2", , 1, "Период", "СВ"); //
БухС = СоздатьОбъект("БухгалтерскиеИтоги");
БухС.Рассчитать(НачПериод,НачПериод);
НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2)- БухС.СНКРС("41.2",1,,,3,МестоХранения,2)+ОстатокПоКассеН;
//НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2) + ОстатокПоКассеН;
НачСдТара = БухС.СНДРС("41.3",1,,,3,МестоХранения,2);;
БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2,41.3",, , 1, "Операция", "СВ");

БухИт.ВыбратьПериоды();

// Приходная часть товарного отчета

ТабПеч.ВывестиСекцию("Шапка");
ТабПеч.ВывестиСекцию("ШапкаПрихода");

Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Дт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);
//Сообщить(Строка(Док.Вид())+" "+Строка(Док.НомерДок));
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);
Пока Оп.ПолучитьПроводку()=1 Цикл
ТабПрих.НоваяСтрока();
ТабПрих.КтСчета = Оп.Кредит.Счет;
ТабПрих.ДтСчета = Оп.Дебет.Счет;
Если Оп.Кредит.Счет = Сч60_1 Тогда
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(1)));
Иначе
Попытка
ТабПрих.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
Если Док.Вид() = "ПеремещениеТоваровСык" Тогда
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
ТабПрих.ДтСчета = Оп.Дебет.Счет;
ТабПрих.КтСчета = Сч60_1;                  
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(2)));
КонецЕсли;            
КонецЕсли;
ТабПрих.Сумма = Оп.Сумма;
КонецЦикла;
КонецЦикла;

//ТабПрих.Свернуть("КтСчета,ДтСчета,Контрагент","Сумма");
//ТабПрих.Сортировать("+Контрагент");

ТабПрих.ВыбратьСтроки();
Сч = 0;
Пока ТабПрих.ПолучитьСтроку() = 1 Цикл
Если ТабПрих.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабПрих_.НайтиЗначение(ТабПрих.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабПрих_.НоваяСтрока();
ТабПрих_.Контрагент = ТабПрих.Контрагент;
Иначе
ТабПрих_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабПрих.КтСчета = Сч60_1 Тогда
Если ТабПрих.ДтСчета = Сч41_2 Тогда
ТабПрих_.Товар = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч44_1_2 Тогда
ТабПрих_.Издержки = ТабПрих.Сумма;
КонецЕсли;
ИначеЕсли ТабПрих.КтСчета = Сч42 Тогда
ТабПрих_.Наценка = ТабПрих.Сумма;
ИначеЕсли ТабПрих.КтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;

КонецЕсли;
Сч=Сч+1;
ТабПеч.ВывестиСекцию("СтрокаПриход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоПриход");


// Расходная часть товарного отчета


БухИт.ВыбратьПериоды();
Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Кт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);      
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);      

Пока Оп.ПолучитьПроводку()=1 Цикл
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
Продолжить;
КонецЕсли;
ТабРасх.НоваяСтрока();
ТабРасх.КтСчета = Оп.Кредит.Счет;
ТабРасх.ДтСчета = Оп.Дебет.Счет;
Если Оп.Дебет.Счет = Сч60_1 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Оп.Дебет.Субконто(1)));
ИначеЕсли Оп.Дебет.Счет = Сч42 Тогда
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;            
ИначеЕсли Оп.Дебет.Счет = Сч41_2 Тогда
Если Док.Вид() = "СписаниеТоваров" Тогда
ТабРасх.Контрагент = "Списание";
Иначе
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
КонецЕсли;
ИначеЕсли Оп.Дебет.Счет = Сч41_3 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
ИначеЕсли Оп.Дебет.Счет = Сч50_1 Тогда
ТабРасх.Контрагент = "Сдача выручки";
ИначеЕсли Оп.Дебет.Счет = Сч70 Тогда
ТабРасх.Контрагент = "Выдача зарплаты";
Иначе
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
ТабРасх.Сумма = Оп.Сумма;
КонецЦикла;

КонецЦикла;

//ТабРасх.Свернуть("ДтСчета,КтСчета,Контрагент","Сумма");
//ТабРасх.Сортировать("+Контрагент");

БухК = СоздатьОбъект("БухгалтерскиеИтоги");
БухК.ИспользоватьСубконто("ДвиженияДенежныхСредств");
БухК.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухК.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");
БухК.ВыбратьСубконто();
Пока БухК.ПолучитьСубконто() = 1 Цикл
Если БухК.КО() > 0 Тогда
ТабРасх.НоваяСтрока();
ТабРасх.ДтСчета = Сч90_1_2;
ТабРасх.КтСчета = Сч41_2;
ТабРасх.Контрагент = СокрЛП(Строка(БухК.Субконто()));
ТабРасх.Сумма = Число(БухК.КО());
КонецЕсли;
КонецЦикла;

ТабРасх.ВыбратьСтроки();
ТабПеч.ВывестиСекцию("ШапкаРасхода");
Сч=0;
Пока ТабРасх.ПолучитьСтроку() = 1 Цикл
Если ТабРасх.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабРасх_.НайтиЗначение(ТабРасх.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабРасх_.НоваяСтрока();
ТабРасх_.Контрагент = ТабРасх.Контрагент;
Иначе
ТабРасх_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабРасх.КтСчета = Сч41_2 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч70 Тогда            
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч90_1_2 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
//ТабРасх_.Товар = КассаКО;
ИначеЕсли (ТабРасх.ДтСчета = Сч41_2) Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_2) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
ИначеЕсли ТабРасх.ДтСчета = Сч50_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;      
КонецЕсли;
ИначеЕсли ТабРасх.КтСчета = Сч41_3 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;

ИначеЕсли (ТабРасх.ДтСчета) = Сч41_3 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_3) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
КонецЕсли;
КонецЕсли;

Сч = Сч+1;
ТабПеч.ВывестиСекцию("СтрокаРасход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоРасход");

////////////////////////////
//ТабПрих_.ВыбратьСтроки();
//Пока ТабПрих_.ПолучитьСтроку() = 1 Цикл
// Сч=Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаПриход");
//КонецЦикла;
//ТабПеч.ВывестиСекцию("ИтогоПриход");

//ТабПеч.ВывестиСекцию("ШапкаРасхода");
//ТабРасх_.ВыбратьСтроки();
//Сч=0;
//Пока ТабРасх_.ПолучитьСтроку() = 1 Цикл
// Сч = Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаРасход");
//КонецЦикла;      
//ТабПеч.ВывестиСекцию("ИтогоРасход");

ТабПеч.ВывестиСекцию("КонОстаток");                  
ТабПеч.ВывестиСекцию("Подвал");
//ТабПеч.Защита(1);
ТабПеч.Опции(0,,,,,,,);
ТабПеч.Показать("Товарный отчет " + Строка(НачПериод) + " - " + Строка(КонПериод));
КонецПроцедуры

// преодпределенные процедуры
Процедура ПриОткрытии()
НачПериод = НачНедели(РабочаяДата());
КонПериод = КонНедели(РабочаяДата());
МестоХранения = константа.ОсновнойСклад;
КонецПроцедуры[/code]

Сделала вот так. Теперь выводит каждую строку документа. Причем в разном сочетании. Например:
Документ Поступление товара содержит
1. Товар 1 шт. цена опт. - 30 руб., цена с наценкой - 60 руб., сумма опт. - 30 руб. , наценка - 30 руб., всего - 60 руб.
2. Тара 1 шт. цена опт. - 20 руб., цена с наценкой - 20 руб., сумма опт. - 20 руб. , наценка - 0 руб., всего - 20 руб.
3. транспортные расходы 1 шт. цена опт. - 200 руб., цена с наценкой - 200 руб., сумма опт. - 200 руб. , наценка - 0 руб., всего - 200 руб.

В отчете выводится так:
Контрагент Товар Тара Наценка
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 30.00 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 60.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 230.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 200.00 20.00

Как сделать группировку по документу?
Спасибо.Всем доброго дня.
Имеется Бухгалтерия 7.7 обычная (не УСН).
Конфигурацию дорабатывали. В ней есть Товарный отчет.
Писала не сама, лорабатываю. До этого отчет группировал строки по контрагенту и выводил общую сумму.
Исходный отчет http://depositfiles.com/files/q4vmlt568

Товарный отчет (немного исправленный):
[code]
Процедура Сформировать()
Сч =0;
Док = СоздатьОбъект("Документ");
Оп = СоздатьОбъект("Операция");

ТабПеч = СоздатьОбъект("Таблица");
ТабПеч.ИсходнаяТаблица("Таблица");

ТабПрих = СоздатьОбъект("ТаблицаЗначений");
ТабПрих.НоваяКолонка("КтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("ДтСчета","Счет.Основной");
ТабПрих.НоваяКолонка("Документ","Документ");
ТабПрих.НоваяКолонка("Контрагент","Строка");
ТабПрих.НоваяКолонка("Тара","Число",12,3);
ТабПрих.НоваяКолонка("Сумма","Число",12,3);


ТабПрих_ = СоздатьОбъект("ТаблицаЗначений");
ТабПрих_.НоваяКолонка("Документ","Документ");
ТабПрих_.НоваяКолонка("Контрагент","Строка");
ТабПрих_.НоваяКолонка("Товар","Число",12,3);
ТабПрих_.НоваяКолонка("Наценка","Число",12,3);
ТабПрих_.НоваяКолонка("Тара","Число",12,3);
ТабПрих_.НоваяКолонка("Издержки","Число",12,3);

ТабРасх = СоздатьОбъект("ТаблицаЗначений");
ТабРасх.НоваяКолонка("КтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("ДтСчета","Счет.Основной");
ТабРасх.НоваяКолонка("Документ","Документ");
ТабРасх.НоваяКолонка("Контрагент","Строка");
ТабРасх.НоваяКолонка("Сумма","Число",12,3);

ТабРасх_ = СоздатьОбъект("ТаблицаЗначений");
ТабРасх_.НоваяКолонка("Документ","Документ");
ТабРасх_.НоваяКолонка("Контрагент","Строка");
ТабРасх_.НоваяКолонка("Товар","Число",12,3);
ТабРасх_.НоваяКолонка("Наценка","Число",12,3);
ТабРасх_.НоваяКолонка("Тара","Число",12,3);

Сч41_2 = СчетПоКоду("41.2");
Сч41_3 = СчетПоКоду("41.3");
Сч42 = СчетПоКоду("42");
Сч44_1_2 = СчетПоКоду("44.1.2");
Сч50_1 = СчетПоКоду("50.1");
Сч60_1 = СчетПоКоду("60.1");      
Сч90_1_2 = СчетПоКоду("90.1.2");
Сч70 = СчетПоКоду("70");

БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВключатьСубСчета(1);

БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);

НачСдТовар = 0;
НачСдТара = 0;
КонСдТовар = 0;

ОстатокПоКассеН = 0;//
ОстатокПоКассеК = 0;//

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");

ОстатокПоКассеН = БухИт.СНД();
ОстатокПоКассеК = БухИт.СКД();

БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2","60.1,90.1.2,42,41.2", , 1, "Период", "СВ"); //
БухС = СоздатьОбъект("БухгалтерскиеИтоги");
БухС.Рассчитать(НачПериод,НачПериод);
НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2)- БухС.СНКРС("41.2",1,,,3,МестоХранения,2)+ОстатокПоКассеН;
//НачСдТовар = БухС.СНДРС("41.2",1,,,3,МестоХранения,2) + ОстатокПоКассеН;
НачСдТара = БухС.СНДРС("41.3",1,,,3,МестоХранения,2);;
БухИт.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухИт.ВыполнитьЗапрос(НачПериод, КонПериод,"41.2,41.3",, , 1, "Операция", "СВ");

БухИт.ВыбратьПериоды();

// Приходная часть товарного отчета

ТабПеч.ВывестиСекцию("Шапка");
ТабПеч.ВывестиСекцию("ШапкаПрихода");

Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Дт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);
//Сообщить(Строка(Док.Вид())+" "+Строка(Док.НомерДок));
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);
Пока Оп.ПолучитьПроводку()=1 Цикл
ТабПрих.НоваяСтрока();
ТабПрих.КтСчета = Оп.Кредит.Счет;
ТабПрих.ДтСчета = Оп.Дебет.Счет;
Если Оп.Кредит.Счет = Сч60_1 Тогда
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(1)));
Иначе
Попытка
ТабПрих.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
Если Док.Вид() = "ПеремещениеТоваровСык" Тогда
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
ТабПрих.ДтСчета = Оп.Дебет.Счет;
ТабПрих.КтСчета = Сч60_1;                  
ТабПрих.Контрагент = СокрЛП(Строка(Оп.Кредит.Субконто(2)));
КонецЕсли;            
КонецЕсли;
ТабПрих.Сумма = Оп.Сумма;
КонецЦикла;
КонецЦикла;

//ТабПрих.Свернуть("КтСчета,ДтСчета,Контрагент","Сумма");
//ТабПрих.Сортировать("+Контрагент");

ТабПрих.ВыбратьСтроки();
Сч = 0;
Пока ТабПрих.ПолучитьСтроку() = 1 Цикл
Если ТабПрих.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабПрих_.НайтиЗначение(ТабПрих.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабПрих_.НоваяСтрока();
ТабПрих_.Контрагент = ТабПрих.Контрагент;
Иначе
ТабПрих_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабПрих.КтСчета = Сч60_1 Тогда
Если ТабПрих.ДтСчета = Сч41_2 Тогда
ТабПрих_.Товар = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;
ИначеЕсли ТабПрих.ДтСчета = Сч44_1_2 Тогда
ТабПрих_.Издержки = ТабПрих.Сумма;
КонецЕсли;
ИначеЕсли ТабПрих.КтСчета = Сч42 Тогда
ТабПрих_.Наценка = ТабПрих.Сумма;
ИначеЕсли ТабПрих.КтСчета = Сч41_3 Тогда
ТабПрих_.Тара = ТабПрих.Сумма;

КонецЕсли;
Сч=Сч+1;
ТабПеч.ВывестиСекцию("СтрокаПриход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоПриход");


// Расходная часть товарного отчета


БухИт.ВыбратьПериоды();
Пока БухИт.ПолучитьПериод() = 1 Цикл
Дт = БухИт.ВыбранаПоДт();
Кт = БухИт.ВыбранаПоКт();
Если Кт=0 Тогда
Продолжить;
КонецЕсли;

Опер = БухИт.Операция;
Док.НайтиДокумент(Опер.Документ);      
Оп.ВыбратьОперацииСПроводками(Опер.Документ,Опер.Документ);      

Пока Оп.ПолучитьПроводку()=1 Цикл
Если Оп.Дебет.Субконто(2) = МестоХранения Тогда
Продолжить;
КонецЕсли;
ТабРасх.НоваяСтрока();
ТабРасх.КтСчета = Оп.Кредит.Счет;
ТабРасх.ДтСчета = Оп.Дебет.Счет;
Если Оп.Дебет.Счет = Сч60_1 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Оп.Дебет.Субконто(1)));
ИначеЕсли Оп.Дебет.Счет = Сч42 Тогда
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;            
ИначеЕсли Оп.Дебет.Счет = Сч41_2 Тогда
Если Док.Вид() = "СписаниеТоваров" Тогда
ТабРасх.Контрагент = "Списание";
Иначе
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
КонецЕсли;
ИначеЕсли Оп.Дебет.Счет = Сч41_3 Тогда
ТабРасх.Контрагент = СокрЛП(Строка(Док.СкладПолучатель));
ИначеЕсли Оп.Дебет.Счет = Сч50_1 Тогда
ТабРасх.Контрагент = "Сдача выручки";
ИначеЕсли Оп.Дебет.Счет = Сч70 Тогда
ТабРасх.Контрагент = "Выдача зарплаты";
Иначе
Попытка
ТабРасх.Контрагент = СокрЛП(Строка(Док.Контрагент));
Исключение
КонецПопытки;
КонецЕсли;
ТабРасх.Сумма = Оп.Сумма;
КонецЦикла;

КонецЦикла;

//ТабРасх.Свернуть("ДтСчета,КтСчета,Контрагент","Сумма");
//ТабРасх.Сортировать("+Контрагент");

БухК = СоздатьОбъект("БухгалтерскиеИтоги");
БухК.ИспользоватьСубконто("ДвиженияДенежныхСредств");
БухК.ИспользоватьСубконто("МестаХранения",МестоХранения);
БухК.ВыполнитьЗапрос(НачПериод, КонПериод,"50.1",, , 1, "Период", "СВ");
БухК.ВыбратьСубконто();
Пока БухК.ПолучитьСубконто() = 1 Цикл
Если БухК.КО() > 0 Тогда
ТабРасх.НоваяСтрока();
ТабРасх.ДтСчета = Сч90_1_2;
ТабРасх.КтСчета = Сч41_2;
ТабРасх.Контрагент = СокрЛП(Строка(БухК.Субконто()));
ТабРасх.Сумма = Число(БухК.КО());
КонецЕсли;
КонецЦикла;

ТабРасх.ВыбратьСтроки();
ТабПеч.ВывестиСекцию("ШапкаРасхода");
Сч=0;
Пока ТабРасх.ПолучитьСтроку() = 1 Цикл
Если ТабРасх.Контрагент = """" Тогда
Продолжить;
КонецЕсли;
НомСтр = 0; НомКол = 0;
Если ТабРасх_.НайтиЗначение(ТабРасх.Контрагент,НомСтр,НомКол) = 0 Тогда
ТабРасх_.НоваяСтрока();
ТабРасх_.Контрагент = ТабРасх.Контрагент;
Иначе
ТабРасх_.ПолучитьСтрокуПоНомеру(НомСтр);
КонецЕсли;
Если ТабРасх.КтСчета = Сч41_2 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч70 Тогда            
ТабРасх_.Товар = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч90_1_2 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
//ТабРасх_.Товар = КассаКО;
ИначеЕсли (ТабРасх.ДтСчета = Сч41_2) Тогда
ТабРасх_.Товар = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_2) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
ИначеЕсли ТабРасх.ДтСчета = Сч50_1 Тогда
ТабРасх_.Товар = ТабРасх.Сумма;      
КонецЕсли;
ИначеЕсли ТабРасх.КтСчета = Сч41_3 Тогда
Если ТабРасх.ДтСчета = Сч60_1 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
ИначеЕсли ТабРасх.ДтСчета = Сч42 Тогда            
ТабРасх_.Наценка = ТабРасх.Сумма;

ИначеЕсли (ТабРасх.ДтСчета) = Сч41_3 Тогда
ТабРасх_.Тара = ТабРасх.Сумма;
Если (ТабРасх.ДтСчета = Сч41_3) и (ПустоеЗначение(МестоХранения)=1) Тогда //23.05.2003 для всей организации перемещение не учитываем
ТабРасх_.УдалитьСтроку();
КонецЕсли;
КонецЕсли;
КонецЕсли;

Сч = Сч+1;
ТабПеч.ВывестиСекцию("СтрокаРасход");
КонецЦикла;
ТабПеч.ВывестиСекцию("ИтогоРасход");

////////////////////////////
//ТабПрих_.ВыбратьСтроки();
//Пока ТабПрих_.ПолучитьСтроку() = 1 Цикл
// Сч=Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаПриход");
//КонецЦикла;
//ТабПеч.ВывестиСекцию("ИтогоПриход");

//ТабПеч.ВывестиСекцию("ШапкаРасхода");
//ТабРасх_.ВыбратьСтроки();
//Сч=0;
//Пока ТабРасх_.ПолучитьСтроку() = 1 Цикл
// Сч = Сч+1;
// ТабПеч.ВывестиСекцию("СтрокаРасход");
//КонецЦикла;      
//ТабПеч.ВывестиСекцию("ИтогоРасход");

ТабПеч.ВывестиСекцию("КонОстаток");                  
ТабПеч.ВывестиСекцию("Подвал");
//ТабПеч.Защита(1);
ТабПеч.Опции(0,,,,,,,);
ТабПеч.Показать("Товарный отчет " + Строка(НачПериод) + " - " + Строка(КонПериод));
КонецПроцедуры

// преодпределенные процедуры
Процедура ПриОткрытии()
НачПериод = НачНедели(РабочаяДата());
КонПериод = КонНедели(РабочаяДата());
МестоХранения = константа.ОсновнойСклад;
КонецПроцедуры[/code]

Сделала вот так. Теперь выводит каждую строку документа. Причем в разном сочетании. Например:
Документ Поступление товара содержит
1. Товар 1 шт. цена опт. - 30 руб., цена с наценкой - 60 руб., сумма опт. - 30 руб. , наценка - 30 руб., всего - 60 руб.
2. Тара 1 шт. цена опт. - 20 руб., цена с наценкой - 20 руб., сумма опт. - 20 руб. , наценка - 0 руб., всего - 20 руб.
3. транспортные расходы 1 шт. цена опт. - 200 руб., цена с наценкой - 200 руб., сумма опт. - 200 руб. , наценка - 0 руб., всего - 200 руб.

В отчете выводится так:
Контрагент Товар Тара Наценка
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 30.00 20.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 60.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 230.00 20.00 30.00
КОБЗЕВ АЛЕКСАНДР ВИКТОРОВИЧ (И 200.00 20.00

Как сделать группировку по документу?
Спасибо."

 
BigAnn
Пост №2
Извините, что сообщение задвоилось. Что-то браузер...
29.04.2011 09:31
 
 
BigAnn
Пост №3
АП!
03.05.2011 10:21
 
 
zak555 (398843952)
Пост №4
10 000 =)
04.05.2011 08:20
 
 
Thorvardr
Пост №5
Алгоритм, конечно, топорный. Тяжело что то я вника...
04.05.2011 14:09
 
 
zak555 (398843952)
Пост №6
там можно одним бухЗапросом собрать данные
04.05.2011 18:44
 

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Учет, налогообложение, автоматизация
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • ЕГАИС

1С бесплатно 1С-Отчетность 1С-Такском 1С:ERP Управление предприятием 1С:Бесплатно 1С:Бухгалтерия 8 1С:Бухгалтерия 8 КОРП 1С:Бухгалтерия автономного учреждения 1С:Бухгалтерия государственного учреждения 1С:Бюджет муниципального образования 1С:Бюджет поселения 1С:Вещевое довольствие 1С:Деньги 1С:Документооборот 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и кадры государственного учреждения 1С:Зарплата и управление персоналом 1С:Зарплата и управление персоналом КОРП 1С:Комплексная автоматизация 8 1С:Лекторий 1С:Предприятие 1С:Предприятие 7.7 1С:Предприятие 8 1С:Розница 1С:Управление небольшой фирмой 1С:Управление производственным предприятием 1С:Управление торговлей 1СПАРК-Риски 1СПредприятие 8 2-НДФЛ 3-НДФЛ 4-ФСС 5 минут 54-ФЗ 6-НДФЛ CRM IT-компании авансовый платеж автозаполнение реквизитов Агентский договор. Учет административная ответственность адресный классификатор акцизы алкоголь алкогольная продукция амортизационная премия амортизация арбитражная практика аттестация рабочих мест аудит аудиторские организации база для начисления страховых взносов база по страховым взносам база по налогу на прибыль банк и касса в 1с банкротство без ККТ безвозмездная передача имущества безнадежная задолженность безналичные расчеты бланки строгой отчетности больничное пособие больничный листок бухгалтер бухгалтерия автономного учреждения бухгалтерская отчетность бухгалтерские события бухгалтерский баланс бухгалтерский учет бухучет бюджет муниципального образования бюджет поселения бюджетная отчетность бюджетный учет ввоз товаров взаимозависимые_лица взноcы в ПФР взносы в ФОМС взносы в ФСС взносы на травматизм взыскание налогов видео 1С видео-уроки 1С водный налог возврат налогов возврат переплаты возмещение расходов восстановление НДС выездная налоговая проверка выездная проверка выплата зарплаты выплаты по ГПД выплаты работникам выплаты физическим лицам вычет НДС вычет по НДС вычеты по НДФЛ ВЭД ГК РФ госпошлина государственная регистрация гражданско-правовой договор графики работы дебиторка декларация о плате за негативное воздействие на окружающую среду декларация по алкоголю декларация по налогу на прибыль декларация по НДС День Бухгалтерии детские пособия ДиректБанк договор комиссии договор подряда договор поставки договорная политика документальное оформление документооборот долговые обязательства должная осмотрительность доходы организации ЕГАИС ЕГРЮЛ единый расчет по страховым взносам ЕНВД ЕСН ЕСХН задолженность по налогам займы закон о бухгалтерском учете занимательная бухгалтерия заработная плата зарплата зарплатные налоги защита персональных данных заявление о постановке на учет земельный налог изменения 2015 изменения в законодательстве изменения в законодательстве 2012 изменения в законодательстве 2013 изменения-2017 имущественные вычеты имущественные налоги имущественный налоговый вычет индивидуальный предприниматель иностранные компании иностранный контрагент иностранный работник интернет-компании интернет-магазины ИП ИП на ЕНВД ип на усн ИС 1С:ИТС исправление бухгалтерских ошибок исправление ошибок ИТС ИФНС кадастровая стоимость кадровое оформление камеральная проверка кассовая дисциплина кассовые операции кассовый чек КБК КИК ККТ КЛАДР ключевая ставка книга на УСН книга покупок книга продаж КоАП РФ коды видов продукции командировка командировочные расходы компенсации работникам компенсационные выплаты компенсация за отпуск консолидированная группа контролируемые сделки контрольные соотношения корректировочный счет-фактура коэффициент-дефлятор крупнейшие налогоплательщики курсовые разницы лекарственные препараты лизинг лизинговое имущество ликвидация организации лицензирование малый бизнес маркировка изделий маркировка изделий из натурального меха маркировка меховых изделий маркировка товара материальная выгода материальная помощь материнский капитал миниденьги модернизация основных средств МРОТ МСФО наличные расчеты налог на игорный бизнес налог на имущество налог на имущество физических лиц налог на прибыль налоги физических лиц налоговая база по налогу на прибыль налоговая база по ндс налоговая декларация налоговая задолженность налоговая ответственность налоговая отчетность налоговая политика налоговая проверка налоговая ставка налоговое администрирование налоговые льготы налоговые споры налоговый агент налоговый агент НДФЛ налоговый агент по ндс налоговый агент по ндфл налоговый агент по НДФЛ налоговый вычет налоговый вычет по ндфл налоговый контроль налоговый мониторинг налоговый учет налоговый учет расходов налогообложение доходов налогоплательщик начисление амортизации начисление пени НДПИ НДС НДС по ставке 10% НДС при экспорте НДС-2015 НДФЛ негативное воздействие на окружающую среду неотделимые улучшения неприменение ккт нерезиденты НИОКР НК РФ НМА новая форма декларации новая форма расчета новости нулевая ставка обзор обзор бухгалтерских событий обзор новостей обособленное подразделение обособленные подразделения обучение 1с обязанности налогоплательщика обязательное социальное страхование обязательное страхование от несчастных случаев на производстве оказание услуг ОКВЭД2 онлайн-касса онлайн-ккт онлайн-ККТ освобождение от налогообложения освобождение от ндс освобождение от ндфл основные средства отпускные отходы отчетность в ПФР отчетность в пфр отчетность в росприроднадзор отчетность в росстат отчетность в Росстат отчетность в фсс отчетность организации отчетность по страховым взносам отчетность предпринимателя оформление счета-фактуры оформление счетов-фактур охрана труда патентная система патентная система налогообложения ПБУ 18 первичные документы передача имущества перенос убытков персонифицированный учет плата за негативное воздействие на окружающую среду плата за проезд грузовиков платежи платежное поручение платежные документы 1с повышение налогов повышение ставок подакцизные товары подача уведомления подтверждающие документы подтверждение расходов полномочия налоговых органов пониженные тарифы поправки в НК РФ поправки в тк рф порядок маркировки товаров пособие по беременности и родам пособие по временной нетрудоспособности пособие по нетрудоспособности пособие по уходу за ребенком посреднические договоры постановка на учет постановка на учет в налоговом органе права налогоплательщика представление сведений применение ККТ приостановление операций по счету проверки бизнеса продажа алкогольной продукции прожиточный минимум производственный календарь проф. Пятов ПСН путевой лист работники-иностранцы раздельный учет расходы на ГСМ расходы на рекламу расходы организации расчет больничного листа расчет заработной платы расчет НДПИ расчет себестоимости расчет страховых взносов расчетный счет расчеты с работниками регистрация ККТ регистрация юридических лиц реестр ККТ реорганизация розничная торговля росалкогольрегулирование РСВ-1 самое новое в 1С:Бухгалтерии самозанятые граждане свод отчетов секреты 1С:ЗУП сельскохозяйственный товаропроизводитель система "Платон" служебная командировка снижение ставок совмещение налоговых режимов составление и сдача отчетности составление и сдача отчетности социальное страхование социальные вычеты социальный налоговый вычет спецоценка условий труда средний заработок ставка НДС Ставка НДФЛ ставка рефинансирования ставки страховых взносов стандартные вычеты стандартный налоговый вычет стандарты бухучета статистика статистическая отчетность статотчетность страхование страховые взносы страховые взносы в пфр страховые взносы в фсс страховые взносы для самозанятых страховые взносы на травматизм страховые тарифы судебная практика судебное решение судебный вердикт суточные счет-фактура табачные изделия таможенные платежи таможенный союз ТК РФ торговый сбор транспортный налог трудовая книжка трудовой договор увольнение по инициативе руководителя увольнение по соглашению сторон уголовная ответственность УКД универсальный корректировочный документ УПД уплата госпошлины уплата налога уплата налогов уплата НДС уплата сбора упрощенная система налогообложения УСН уставный капитал уточненка учет аренды учет в АО учет в бюджетных учреждениях учет в госорганизациях учет в ООО учет в сельском хозяйстве учет в строительстве учет в туризме учет дивидендов учет доходов при усн учет импорта учет лизинга учет МПЗ учет на производстве учет ОС учет основных средств учет премий учет расходов учет расходов при усн учет реализации учет субсидий учет товаров учет ценных бумаг учет экспорта учетная политика факсимиле федеральный стандарт бухгатерского учета ФИАС фиксированные страховые взносы финансовый анализ ФНС РФ форма 6-НДФЛ форма заявления формы документов хроники 54-ФЗ штрафные санкции экологические платежи экспорт продукции электронная отчетность электронная подпись электронные счета-фактуры электронный документооборот электронный формат энциклопедия проверок

Все теги