Код: Выделить всё
#declare f_(str_)
if (trim(#str_) = ‘’, ‘-‘, #str_)
#end
#define precis ‘\2p[|-]3666666666666666.88’
#declare SpName
if (SpExistNDS or SpPerc <> 0, SpName, SpName)
#end
#declare sum_(sum_)
if (abs(#sum_) > 0.001, DoubleToStr(#sum_, #precis),if(wGetTune(‘Country’)=0,’-‘,’’))
#end
#declare s_(Stav_)
if(wGetTune(‘Country’)=0,
if(((SubTip=16) or (SubTip=23)), string(#Stav_,2,0)+’/’+string(100+#Stav_,3,0),
string(#Stav_,3,0)+’ %’),
string(#Stav_,3,0)+' %')
#end
#doc
Счет-фактура (RTF-формат)
#end
.LinkForm ’SfBlank_Rtf_02_my’ prototype is ’Schfrees’
.NameInList ’Счет-фактура_my (RTF-формат)’
.Group ’ Бланки счетов-фактур (с 11.05.2006)’
.Set Filler ’-’
!-------------------------------------------------------------------
.var
rNDS, rSumNoNDS,
rAkcis, rSaleTax, rSumma: double;
is2004, NextPage : boolean;
NumSigner : word;
KolSigners : word;
arrFIO_Dir : array[1..2] of string;
arrPosition_Dir : array[1..2] of string;
arrFIO_Buh : array[1..2] of string;
arrPosition_Buh : array[1..2] of string;
isDirector : boolean;
isBuh : boolean;
SpUchEd: string;
Koef : double
.endvar
.Create view tt1 as select *
from SPSCHF WHERE ((cSpSchf == SpSchf.Nrec
));
.begin
is2004 := (ppPrintParam and 128) <> 0;
NextPage := false;
NumSigner := 0;
for (NumSigner := 1; NumSigner <= Count(arrFIO_Dir); NumSigner := NumSigner + 1)
{
arrFIO_Dir [NumSigner] := ’’;
arrPosition_Dir [NumSigner] := ’’;
}
for (NumSigner := 1; NumSigner <= Count(arrFIO_Buh); NumSigner := NumSigner + 1)
{
arrFIO_Buh [NumSigner] := ’’;
arrPosition_Buh [NumSigner] := ’’;
}
NumSigner := 0;
end.
!-------------------------------------------------------------------
.{ CheckEnter FeeSignersMember_Schfrees_Dir
.begin
NumSigner := NumSigner + 1;
arrFIO_Dir [NumSigner] := Signer_FIO_Director;
arrPosition_Dir [NumSigner] := Signer_Position_Director;
end.
.}
.begin
NumSigner := 0;
end.
.{ CheckEnter FeeSignersMember_Schfrees_Buh
.begin
NumSigner := NumSigner + 1;
arrFIO_Buh [NumSigner] := Signer_FIO_MainBuh;
arrPosition_Buh [NumSigner] := Signer_Position_MainBuh;
end.
.}
.if SetDateRange
.end
.{CheckEnter Schf
.if HeaderGroup
.end
.fields
NSF
if (longint(dFact)<>0, DateToStr(dFact, ’"DD" Mon YYYY г.’), ’’)
if (Direct = 1,
#f_(MyOrgName),
#f_(OrgName)
)
if (Direct = 1,
#f_(MyOrgAddr),
#f_(OrgAddr)
)
if (is2004, ’ИНН/КПП продавца’, ’ИНН продавца’)
if (Direct = 1,
#f_(MyOrgINN + if (is2004 and (trim(MyOrgKPP) <> ’’), ’ / ’ + MyOrgKPP, ’’)),
#f_(OrgINN + if (is2004 and (trim(OrgKPP) <> ’’), ’ / ’ + OrgKPP, ’’))
)
#f_(GruzFrom)
#f_(GruzTo)
#f_(platNo_Date)
if (Direct <> 1,
#f_(MyOrgName),
#f_(OrgName)
)
if (Direct <> 1,
#f_(MyOrgAddr),
#f_(OrgAddr)
)
if (is2004, ’ИНН/КПП покупателя’, ’ИНН покупателя’)
if (Direct <> 1,
#f_(MyOrgINN + if (is2004 and (trim(MyOrgKPP) <> ’’), ’ / ’ + MyOrgKPP, ’’)),
#f_(OrgINN + if (is2004 and (trim(OrgKPP) <> ’’), ’ / ’ + OrgKPP, ’’))
)
.endfields
.{?internal; NextPage and not is2004
.}
.{?internal; NextPage and is2004
.}
.{?internal; is2004
Приложение № 1
к Правилам ведения журналов учета
полученных и выставленных счетов-фактур,
книг покупок и книг продаж при расчетах
по налогу на добавленную стоимость,
утвержденным постановлением Правительства
Российской Федерации от 2 декабря 2000 г. № 914
(в ред. Постановлений Правительства РФ от 15.03.2001
№ 189, от 27.07.2002 № 575, от 16.02.2004 № 84,
от 11.05.2006 № 283, от 26.05.2009 № 451)
.}
Счет-фактура № ^ от ^
Продавец ^
Адрес ^
^ ^
Грузоотправитель и его адрес ^
Грузополучатель и его адрес ^
К платежно-расчетному документу № ^
Покупатель ^
Адрес ^
^ ^
.if Dopol
.fields
Nazn
.endfields
Дополнение (условия оплаты по договору (контракту), способ отправления и т.п.)
^
.end
.fields
Dollar
.endfields
.{CheckEnter SchfKatSopr
.{CheckEnter SchfSpSopr
.{CheckEnter SchfSpSoprNalog
.} // SchfSpSoprNalog
.} // SchfSpSopr
.} // SchfKatSopr
Валюта: ^
Наименование товара
(описание выполненных работ, оказанных услуг), имущественного права Единица
измерения Количество
Цена (тариф) за единицу измерения
Стоимость товаров
(работ, услуг), имущественных прав, всего без налога
В том числе акциз
Нало-
говая
ставка Сумма налога
Стоимость товаров (работ, услуг) , имущественных прав, всего с учетом налога Страна происхождения Номер тамо-женной декла-рации
1 2 3 4 5 6 7 8 9 10 11
.begin
NextPage := true;
rNDS := 0;
rSumNoNDS := 0;
rAkcis := 0;
rSaleTax := 0;
rSumma := 0;
end.
.{CheckEnter SpSchf
.fields
#SpName
#f_(if (SpPrMC = 3, ’’, SpUchEd))
if (SpPrMC = 101 or SpPrMC = 102, ’-’,
if (SpPrMC = 3, ’0.0’, String((SpKol*koef), 0, Kol_Pr)))
if (SpPrMC = 3, ’0.0’, #sum_(SpPrNoNds/koef))
#sum_(SpSumNoNDS)
#sum_(SpAkciz)
if (SpPrMC = 101, ’-’,
if (SpPrMC = 102, if (SpPerc = -1, ’-’, String(SpPerc, 2, 0) + ’/’ + String(100 + SpPerc, 3, 0)),
if (SpExistNDS or Abs(SpPerc) >= 0.01,
String(SpPerc, if (SpPerc >= 10, 2, 1), 0) + ’ %’, ’-’)))
if (SpPrMC = 101, ’-’,
if (SpPrMC = 102, if (SpPerc = -1, ’-’, DoubleToStr(SpNDS, ’p[|-]3666666666666666666.88’)),
if (SpExistNDS or Abs(SpPerc) >= 0.01,
DoubleToStr(SpNDS, ’p[|-]3666666666666666666.88’), ’-’)))
#sum_(SpSumma)
GTDCountry
GTDNomer
.endfields
.begin
if tt1.GetFirst SPSCHF = tsOk
{
SpUchEd := fEdIzm.GetAktOtpEdName(SpSchf.CMCUSL, SpPrMC);
koef := fEdIzm.GetKoefOtpEd(SpSchf.cOtpEd);
}
end.
^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
.begin
rNDS := rNDS + round(SpNDS, 2);
rSumNoNDS := rSumNoNDS + round(SpSumNoNDS, 2);
rAkcis := rAkcis + round(SpAkciz, 2);
rSaleTax := rSaleTax + round(SpSaleTax, 2);
rSumma := rSumma + round(SpSumma, 2);
end.
.} // SpSchf
.{CheckEnter KazSt
.}
.{CheckEnter NalogFinSchf
.} // NalogFinSchf
.if ItogoGroup // итого по группе. Если true, то не печатать Итого
.end
.fields
if (((SubTip=16) and (wGetTune(’Country’)=0)),’ - ’,
if ((ppPrintParam and 64) <> 0, #sum_ (if (bSumEqual, rSumNoNDS, S1 + S4 + S23 + S7)), ’’))
#sum_( if (bSumEqual, rNDS, S2 + S5))
#sum_( if (bSumEqual, rSumma, S))
.endfields
Всего к оплате ^ ^ ^
.begin
NumSigner := 0;
KolSigners := if(KolSigners_Director >= KolSigners_MainBuh, KolSigners_Director, KolSigners_MainBuh);
end.
.{?internal; not is2004
.fields
Director
Main_Buh
.endfields
Руководитель организации ^ Главный бухгалтер ^
(индивидуальный предприниматель) (реквизиты свидетельства о государственной регистрации индивидуального предпринимателя)
М.П.
Выдал
(подпись ответственного лица от продавца)
Примечания. Первый экземпляр - покупателю, второй экземпляр – продавцу.
.}
.{?internal; is2004
.fields
Director
Main_Buh
.endfields
Руководитель организации ^ Главный бухгалтер ^
(подпись) (Ф.И.О.) (подпись) (Ф.И.О.)
.{?internal; (KolSigners_Director > 0 or KolSigners_MainBuh > 0)
За руководителя организации За главного бухгалтера
.}
.{While (NumSigner < KolSigners)
.begin
NumSigner := NumSigner + 1;
IsDirector := if(KolSigners_Director >= NumSigner, true, false);
IsBuh := if(KolSigners_MainBuh >= NumSigner, true, false);
end.
.{?internal; (isDirector and isBuh)
.fields
arrPosition_Dir[NumSigner]
arrFIO_Dir [NumSigner]
arrPosition_Buh[NumSigner]
arrFIO_Buh [NumSigner]
.endfields
^ ^ ^ ^
(подпись) (Ф.И.О.) (подпись) (Ф.И.О.)
.}
.{?internal; (isDirector and not isBuh)
.fields
arrPosition_Dir[NumSigner]
arrFIO_Dir [NumSigner]
.endfields
^ ^
(подпись) (Ф.И.О.)
.}
.{?internal; (not isDirector and isBuh)
.fields
arrPosition_Buh[NumSigner]
arrFIO_Buh [NumSigner]
.endfields
^ ^
(подпись) (Ф.И.О.)
.}
.}
Индивидуальный предприниматель
(подпись) (Ф.И.О.) (реквизиты свидетельства о государственной регистрации
индивидуального предпринимателя)
Примечание. Первый экземпляр - покупателю, второй экземпляр – продавцу.
.}
.} // Schf
.endform
То есть, какой то видимо уникальный ресурс все же нужен, не из galFRM, а вот откуда?