Интересно - из типового ТИС в БУХ всё прекрасно выгружалось штатными способами и с счетами-фактурами
к сожалению, у нас не совсем типовая ТиС, она сильно модифицирована, ее почти с нуля писали, зачем, лучше не спрашивайте)
Ели не лень, то в самой обработке (в коде) можно посмотреть, есть ли там уже что-то про счета-фактуры
где в бухгалтерии эта обработка, что-то найти не могу, там есть универсальная... а из ТиС? как она зовется?
Мне казалось, в стандартной выгрузке только проводки выгружаются.
мне как раз только проведенные доки и нужны в бухгалтерии, но опять же повторюсь, торговля у меня не стандартная!
При необходимости на приходные и расходные в момент загрузки можно создать и соответствующие СФ
спасибо за обработку, получается, что для формирования счет-фактуры достаточно этого?
SFc.New();
SFc.DocDate = Doc.DocDate;
SFc.DocNum = NumSF;
if FillSF(Doc.CurrentDocument()) = 0 then
Message("Счет-фактура не создан !");
Return
endif;
SFc.Write();
SFc.MakeActions();
Message("создан документ ""cчет-фактура"" "+SFc.DocNum+" от "+SFc.DocDate);
еще вот, самое главное забыл)))
Function FillSF(ДокОсн)
SFc.DeleteLines();
if Const.МетодОпределенияВыручки.Получить(SFc.DocDate) = глПоОтгрузке then
SFc.СчетНДС = 1;
else
SFc.СчетНДС = 2;
endif;
SFc.ВерсияОбъекта = Const.НомерРелиза;
SFc.Договор = ДокОсн.Договор;
SFc.Контрагент = ДокОсн.Контрагент;
SFc.Грузополучатель = ДокОсн.Контрагент;
SFc.СчетАкциза = 1;
SFc.Курс = 1;
SFc.Валюта = Const.ОсновнаяВалюта;
SFc.ВариантОтправки = 1;
SFc.ДокументОснование = ДокОсн;
SFc.Грузоотправитель = GetEmptyValue();
SFc.Комментарий = "Введен на основании: "+ГлПредставлениеДокумента(ДокОсн);
ДокОсн.SelectLines(); L = 0;
while ДокОсн.GetLine() = 1 do
SFc.NewLine();
L = L + 1;
SFc.SetType("Товар", "Справочник.Номенклатура");
SFc.Товар = ДокОсн.Товар;
SFc.СтранаПроисхождения = Страны[L];
SFc.ГТД = ДокОсн.ГТД;
SFc.Количество = ДокОсн.Количество;
SFc.СтавкаНДС = глСтавкаНалога(ДокОсн, "НДС");
Кол = ?(SFc.Количество = 0, 1, SFc.Количество);
if (Int(SFc.СтавкаНДС.Ставка) = SFc.СтавкаНДС.Ставка) OR
(ДокОсн.ВариантРасчетаНалогов.СуммаВключаетНДС = 0) then
SFc.Цена = (ДокОсн.Всего - ДокОсн.НДС - ДокОсн.НП)/Кол;
SFc.Сумма = ДокОсн.Всего - ДокОсн.НДС - ДокОсн.НП;
else
SFc.Цена = (ДокОсн.Всего - ДокОсн.НП)/Кол;
SFc.Сумма = ДокОсн.Всего - ДокОсн.НП;
endif;
SFc.НДС = ДокОсн.НДС;
SFc.Счет = СчетПоКоду("90.3");
SFc.SetType("Субконто1",SFc.Счет.ВидСубконто(1));
SFc.SetType("Субконто2",SFc.Счет.ВидСубконто(2));
SFc.Субконто1 = SFc.Товар.ВидНоменклатуры;
SFc.Субконто2 = SFc.СтавкаНДС;
if Int(SFc.СтавкаНДС.Ставка) = SFc.СтавкаНДС.Ставка then
SFc.Всего = SFc.Сумма+SFc.НДС;
else
SFc.Всего = SFc.Сумма;
endif;
enddo;
Return 1;
endFunction // Заполнить()