Имя: Пароль:
1C
1С v8
Проводки программно
0 mi4asib
 
06.10.12
17:03
Добрый вечер !

Конфигурация АЛЬФА авто 5я ( загрузка данных в буху )

Умеем бух задачу
1.Реализация
зап/ч физ лица   90,02,2-41,01  себестоимость
через магазин    62,06-90,01,2  выручка
19,03-68,02  


2.Зап/ч юр лица    90,02,1-41,01 себестоимость
Через магазин   62,06-90,01,1  выручка
90,03-68,02     ндс

3. Заказ-наряд (платный ремонт и ТО)
90,02,2-20,2   себестоимость
19,03-68,02   в 1С не формируется проводка!!! Не получается
62,06-90,01,2 выручка

Первые 2 реализованы !

   Для Каждого ТекСтрокаТаблицы Из ТекОбъект.Товары Цикл
       
       Если ТекОбъект.Контрагент.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо Тогда
           
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчета",ПланыСчетов.Хозрасчетный.ТоварыНаСкладах);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетДоходов",ПланыСчетов.Хозрасчетный.ВыручкаЕНВД);
           ТекОбъект.СчетУчетаРасчетовСКонтрагентом=ПланыСчетов.Хозрасчетный.НайтиПоКоду("62.06");
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетРасходов",ПланыСчетов.Хозрасчетный.СебестоимостьПродажЕНВД);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчетаНДСПоРеализации",ПланыСчетов.Хозрасчетный.НДСпоПриобретеннымМПЗ);
           
       ИначеЕсли ТекОбъект.Контрагент.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо Тогда
           
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчета",ПланыСчетов.Хозрасчетный.ТоварыНаСкладах);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетДоходов",ПланыСчетов.Хозрасчетный.ВыручкаНеЕНВД);
           ТекОбъект.СчетУчетаРасчетовСКонтрагентом=ПланыСчетов.Хозрасчетный.НайтиПоКоду("62.06");
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетРасходов",ПланыСчетов.Хозрасчетный.СебестоимостьПродажНеЕНВД);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчетаНДСПоРеализации",ПланыСчетов.Хозрасчетный.Продажи_НДС);
           
           КонецЕсли;
       
       
       //***измСМВ
   КонецЦикла;


Дело дошло до заказ наряда :(
не могу победить

товар что бы списывался в бухи оприходовал
не могу понять что с услугами делать, в номенклатуре должны быть ?

И так заказ наряд

   //Для платный ремонт и ТО
   
   Для Каждого ТекСтрокаТаблицы Из ТекОбъект.Товары Цикл
       
       Если Прав(ТекОбъект.Номер,2)="ТЮ" ИЛИ Прав(ТекОбъект.Номер,2)="ПП" Тогда
           
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчета",ПланыСчетов.Хозрасчетный.ОсновноеПроизводство);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетРасходов",ПланыСчетов.Хозрасчетный.СебестоимостьПродажЕНВД);
           ТекОбъект.СчетУчетаРасчетовСКонтрагентом=ПланыСчетов.Хозрасчетный.НайтиПоКоду("19.03");
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетУчетаНДСПоРеализации",ПланыСчетов.Хозрасчетный.НДСпоПриобретеннымМПЗ);
           УстановитьРеквизит(ТекСтрокаТаблицы, "СчетДоходов",ПланыСчетов.Хозрасчетный.ВыручкаЕНВД);
           
       КонецЕсли;
       
   КонецЦикла;

А она мне в ответ :

Проведение документа "Реализация товаров и услуг ЗН000007 ТЮ от 29.09.2012 11:37:58":
Строка номер 1 табличной части "Товары": Не заполнено значение реквизита "Счет учета".
В строке номер "1" табличной части "Товары": Не заполнено значение реквизита "Счет доходов"!
В строке номер "1" табличной части "Товары": Не заполнено значение реквизита "Счет расходов"!
Строка номер 1 табличной части "Услуги": Не заполнено значение реквизита "Счет доходов".
Строка номер 1 табличной части "Услуги": Не заполнено значение реквизита "Счет расходов".

Префикс сзади "ТЮ" для отбора документов
1 AndreyFAN
 
06.10.12
17:20
в верхней части "ВыручкаНеЕНВД" в нижней "ВыручкаЕНВД"
какой-то из них не указан в ПланеСчетов?
2 mi4asib
 
06.10.12
17:27
верхние не смотрите 2 куска кода, там все нормально отработало, поставились при загрузки нужные проводки.

Интересует ЗаказНаряд, просто по аналогии пытаюсь сделать но не могу понять куда и как работу прописать ( проводки )
3 Bell
 
06.10.12
22:58
Так это счет-фактура должна делать.
4 mi4asib
 
08.10.12
08:03
Т.Е. в документе загрузки в СФ проводки указать все для услуг ?
5 mi4asib
 
08.10.12
08:07
// Цикл по работам документа
           ТекТабличнаяЧастьРабот    = ПолучитьТабличнуюЧасть(ИдентификаторОбъекта, "Работы");
           Для к = 0 По ТекТабличнаяЧастьРабот.Количество() - 1 Цикл
               ЗначенияСтроки    = ТекТабличнаяЧастьРабот.Получить(к).Значение;
               
               Если ЗначенияСтроки["Сумма"] = 0  Тогда Продолжить; КонецЕсли;
               
               Номенклатура    = ПолучитьЗначениеРеквизита("Номенклатура", "Справочник.Автоработы", ЗначенияСтроки["Работа"]);
               Если СворачиватьТЧ И ДокументПредполагаетСвертку() Тогда
                   Номенклатура    = ВыбУслуга;
               Иначе
                   Номенклатура    = ПолучитьОбъект(Номенклатура, "Справочник.Номенклатура");
               КонецЕсли;
               
               Работа                = ПолучитьЗначениеРеквизита("НаименованиеПолное", "Справочник.Автоработы", ЗначенияСтроки["Работа"]);
               Работа                = ?(ПустаяСтрока(Работа), ПолучитьЗначениеРеквизита("_1C_Наименование", "Справочник.Автоработы", ЗначенияСтроки["Работа"]), Работа);
               Количество            = ЗначенияСтроки["Количество"] * ЗначенияСтроки["Коэффициент"];
               
               ТекСтрока            = ТекОбъект["Услуги"].Добавить();
               УстановитьРеквизит(ТекСтрока, "Номенклатура",        Номенклатура);
               УстановитьРеквизит(ТекСтрока, "Содержание",            Работа);
               УстановитьРеквизит(ТекСтрока, "Количество",            Количество);
               Если ТекОбъект.СуммаВключаетНДС Тогда
                   УстановитьРеквизит(ТекСтрока, "Сумма",            ЗначенияСтроки["СуммаВсего"]);
               Иначе
                   УстановитьРеквизит(ТекСтрока, "Сумма",            ЗначенияСтроки["СуммаВсего"] - ЗначенияСтроки["СуммаНДС"]);
               КонецЕсли;
               УстановитьРеквизит(ТекСтрока, "Цена",                ТекСтрока.Сумма/ТекСтрока.Количество);        
               УстановитьРеквизит(ТекСтрока, "СтавкаНДС",            ПолучитьСтавкуНДСПоИдентификатору(ЗначенияСтроки["СтавкаНДС"]));
               УстановитьРеквизит(ТекСтрока, "СуммаНДС",            ЗначенияСтроки["СуммаНДС"]);
               
               ТекОбъект.ЗаполнитьСчетаУчетаВСтрокеТабЧастиУслуги(ТекСтрока, Истина);
               Если СчетаОтраженияВУчете <> Неопределено Тогда
                   УстановитьРеквизит(ТекСтрока, "СчетДоходов",    СчетаОтраженияВУчете.СчетДоходов);
                   УстановитьРеквизит(ТекСтрока, "Субконто",        СчетаОтраженияВУчете.СубконтоДоходов1);
                   УстановитьРеквизит(ТекСтрока, "СчетРасходов",    СчетаОтраженияВУчете.СчетРасходов);
               КонецЕсли;
           КонецЦикла;
           Если НЕ УстанавливатьСоответствиеДляВидовРемонта Тогда
               СвернутьТабличнуюЧасть(ТекОбъект,"Услуги","Номенклатура,СтавкаНДС","Количество,Сумма,Цена,СуммаНДС","ЗаполнитьСчетаУчетаВСтрокеТабЧастиУслуги",2);    
           КонецЕсли;
       КонецЕсли;
       Если ТекОбъект.Склад.Пустая() Тогда
           УстановитьРеквизит(ТекОбъект, "Склад", УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глТекущийПользователь, "ОсновнойСкладКомпании")); //смв склад компании по умолчанию
       КонецЕсли;


вот есть цикл по работе с услугами
6 mi4asib
 
08.10.12
08:24
вообщем нашел где проставить счета )) спасибо за размышлизмы ))