ПО НДС
Модераторы: m0p3e, edward_K, Модераторы
-
- Местный житель
- Сообщения: 429
- Зарегистрирован: 24 сен 2008, 11:53
ПО НДС
Есть отчет.
Interface _gt_AnalizProd_kor 'EXEL анализ продаж' escclose;
//show at(,,60,);
show at(,,40,15);
create view
var
dat1:date
dat2:date
date1:date
date2:date
t1,t2:time
as
Select
// systdate.* , stepdoc.nrec , stepdoc.cbasedoc , basedoc.descr
*
From
katsopr //katsopr1
, stepdoc
, basedoc
, spsopr
, tKatsSPSopr //tKatsSPSopr1
, tkatpodr tkatpodr1
// , tkatpodr tkatpodr2
, tKatMc tKatMc1
, tKatMc tKatMc2
// , katOrg
, katcity
, tkatorg tkatorg1
, tkatorg tkatorg2
, tmanager tmanager1
// , tmanager tmanager2
// , tInfo tInfo1
, tInfo tInfo2
// , tMon tMon1
, tMon tMon2
// , tBody tBody1
, tBody tBody2
, systdate
, tNalMc
, katparty
, exclassname
, Exclassseg texclassseg
// , ExclasSier
, Exclassval
// , sklost //текушие остатки по мц
Where
((
word(201)==katsopr.vidsopr
and dat1<<=katsopr.dsopr
and dat2>>=katsopr.dsopr
//and word(2)==katsopr.tipsopr (noindex)
and date(1,1,1900)<<=katsopr.dopr (noindex)
and katsopr.nrec == spsopr.csopr
and katsopr.cpodrfrom == tkatpodr.nrec
and katsopr.corg == tkatorg.nrec //
and katsopr.cstepdoc==stepdoc.nrec
and stepdoc.cbasedoc==basedoc.nrec
and basedoc.descr==tmanager.descr
and 1 == spsopr.prmc
and spsopr.cmcusl == tKatMc1.nrec
// подцепляем производителя из партии
and spsopr.cparty == katparty.nrec
and 'Страна происхождения'==exclassname.name
and word(1430)==exclassname.wtable
//and exclassname.classcode==exclassier.classcode(noindex)
//and 1=exclassseg.isleaf
and katparty.nrec==exclassval.crec
and exclassname.classcode==exclassval.classcode//(noindex)
and exclassval.cclassseg==exclassseg.nrec
//and exclassname.classcode==exclassseg.classcode(noindex)
// вроде как подцепили
//and tKatMc1.cgroupmc == tGroupmc.nrec
and tKatsSPSopr.cmcusl == tKatMc.nrec
and tKatsSPSopr.corg == tKatOrg2.nrec //
and tInfo2.org==tkatorg1.nrec
and tkatorg1.city==katcity.nrec
and tInfo2.sclad==tkatpodr1.nrec
and tInfo2.nrec==tBody2.ctInfo
and tInfo2.descr==tmanager1.descr
and tInfo2.cproizw==texclassseg.nrec
and tMon2.mon==tBody2.mon
//and word(201)==katsopr1.vidsopr
//and katorg.ccity==katcity.nrec
and systdate.nrecmyorg == katorg.nrec
and double(0)<<=sklost.kol (noindex)
))
;
Form aprep01 ('out\aprep01.out');
Form aprep02 ('out\aprep02.out');
Form aprep03 ('out\aprep03.out');
Form aprep04 ('out\aprep04.out');
Form aprep05 ('out\aprep05.out');
Form aprep07 ('out\aprep07.out');
Form aprep08 ('out\aprep08.out');
Form badorg01 ('out\badorg01.out');
Form noprod01 ('out\noprod01.out');
screen params show at(,1,,14);
fields date1:,noprotect;
date2:,noprotect;
buttons
cmOK, default;
cmFilt;
cmPrn1;
cmMcCity;
cmScladMC;
cmMc;
cmSclad;
cmOrg;
cmMen;
cmNoProd;
cmCancel;
<<
c .@@@@@@@@@@ по .@@@@@@@@@@
<. Выбрать данные за период .>
<. Фильтровать данные .>
Помесячный анализ продаж
<.МЦ-Склад-Организация-Менеджер-Город.>
<. МЦ-Город .>
<. МЦ-Склад .>
<. Итоговый отчет по МЦ .>
<. Итоговый отчет по складам .>
<. Итоговый отчет по организациям .>
<. Итоговый отчет по менеджерам .>
<. Непродаваемые препараты .>
<. Закрыть окно .>
>>
end;
handleevent
cmInit:
{
date1:=DATE(1,1,YEAR(Cur_Date));
date2:=Cur_Date;
}
cmFilt:
{
runInterface(_gt_filtanaliz);
}
cmOk:
{
var i,j,monplat:word;
var itogkol,itogsum:double;
var sum,kol:double;
Delete all from tKatsSPSopr;
dat1:=date1;
dat2:=date2;
t1:=Cur_Time;
StartNewVisual(vtRotateVisual, vfTimer+vfBreak+vfConfirm,'Идет процесс выборки данных...', RecordsInTable(#katsopr));
getfirst exclassname;
_loop katsopr
{
if getfirst tkatpodr=tsOk and getfirst tkatorg=tsOk and getfirst tmanager=tsok then
_loop spsopr
{
if getfirst tkatmc1=tsOk then
{
insert into tKatsSPSopr set
tKatsSPSopr.nrec:=spsopr.nrec,
tKatsSPSopr.data:=katsopr.dsopr,
tKatsSPSopr.corg:=katsopr.corg,
tKatsSPSopr.cpodrfrom:=katsopr.cpodrfrom,
tKatsSPSopr.cmcusl:=spsopr.cmcusl,
tKatsSPSopr.cproizw:=exclassseg.nrec,
tKatsSPSopr.kol:=spsopr.kolfact,
tKatsSPSopr.descr:=basedoc.descr,
tKatsSPSopr.sum:=If (KatSopr.vHodNal=1,(SpSopr.Price*SpSopr.KolFact-SpSopr.SumNDS),SpSopr.Price*SpSopr.KolFact);
}
//message (katsopr.dsopr + ' ' + katsopr.nsopr +' ' + spsopr.kolfact + ' '+ tKatsSPSopr.sum*1,1);
if (not nextvisual) break;
}
}
t2:=Cur_Time;
StopVisual('Данные выбраны!',0);
message('Время выборки данных :'+timetostr(sub_time(t2,t1),'HH:MM:SS:SSSS'));
//getfirst katorg where ((coGetTune('MyOrg')==katorg.nrec));
}
Как сделать чтобы tKatsSPSopr.sum учитывала еще налог НДС ? Что необходимо добавить в формуле(количество*Цену без НДС*(1+НДС%) а как на языке программирования не знаю)?(НАЛОГ 10 и 18 % . В таблице GRNAL поле KOD имеет названия 10 и 18 соответственно ). ПОДСКАЖИТЕ ПОЖАЛУЙСТА !!! ОПЫТ В ПРОГРАММИРОВАНИИ ОЧЕНЬ МАЛЕНЬКИЙ
Interface _gt_AnalizProd_kor 'EXEL анализ продаж' escclose;
//show at(,,60,);
show at(,,40,15);
create view
var
dat1:date
dat2:date
date1:date
date2:date
t1,t2:time
as
Select
// systdate.* , stepdoc.nrec , stepdoc.cbasedoc , basedoc.descr
*
From
katsopr //katsopr1
, stepdoc
, basedoc
, spsopr
, tKatsSPSopr //tKatsSPSopr1
, tkatpodr tkatpodr1
// , tkatpodr tkatpodr2
, tKatMc tKatMc1
, tKatMc tKatMc2
// , katOrg
, katcity
, tkatorg tkatorg1
, tkatorg tkatorg2
, tmanager tmanager1
// , tmanager tmanager2
// , tInfo tInfo1
, tInfo tInfo2
// , tMon tMon1
, tMon tMon2
// , tBody tBody1
, tBody tBody2
, systdate
, tNalMc
, katparty
, exclassname
, Exclassseg texclassseg
// , ExclasSier
, Exclassval
// , sklost //текушие остатки по мц
Where
((
word(201)==katsopr.vidsopr
and dat1<<=katsopr.dsopr
and dat2>>=katsopr.dsopr
//and word(2)==katsopr.tipsopr (noindex)
and date(1,1,1900)<<=katsopr.dopr (noindex)
and katsopr.nrec == spsopr.csopr
and katsopr.cpodrfrom == tkatpodr.nrec
and katsopr.corg == tkatorg.nrec //
and katsopr.cstepdoc==stepdoc.nrec
and stepdoc.cbasedoc==basedoc.nrec
and basedoc.descr==tmanager.descr
and 1 == spsopr.prmc
and spsopr.cmcusl == tKatMc1.nrec
// подцепляем производителя из партии
and spsopr.cparty == katparty.nrec
and 'Страна происхождения'==exclassname.name
and word(1430)==exclassname.wtable
//and exclassname.classcode==exclassier.classcode(noindex)
//and 1=exclassseg.isleaf
and katparty.nrec==exclassval.crec
and exclassname.classcode==exclassval.classcode//(noindex)
and exclassval.cclassseg==exclassseg.nrec
//and exclassname.classcode==exclassseg.classcode(noindex)
// вроде как подцепили
//and tKatMc1.cgroupmc == tGroupmc.nrec
and tKatsSPSopr.cmcusl == tKatMc.nrec
and tKatsSPSopr.corg == tKatOrg2.nrec //
and tInfo2.org==tkatorg1.nrec
and tkatorg1.city==katcity.nrec
and tInfo2.sclad==tkatpodr1.nrec
and tInfo2.nrec==tBody2.ctInfo
and tInfo2.descr==tmanager1.descr
and tInfo2.cproizw==texclassseg.nrec
and tMon2.mon==tBody2.mon
//and word(201)==katsopr1.vidsopr
//and katorg.ccity==katcity.nrec
and systdate.nrecmyorg == katorg.nrec
and double(0)<<=sklost.kol (noindex)
))
;
Form aprep01 ('out\aprep01.out');
Form aprep02 ('out\aprep02.out');
Form aprep03 ('out\aprep03.out');
Form aprep04 ('out\aprep04.out');
Form aprep05 ('out\aprep05.out');
Form aprep07 ('out\aprep07.out');
Form aprep08 ('out\aprep08.out');
Form badorg01 ('out\badorg01.out');
Form noprod01 ('out\noprod01.out');
screen params show at(,1,,14);
fields date1:,noprotect;
date2:,noprotect;
buttons
cmOK, default;
cmFilt;
cmPrn1;
cmMcCity;
cmScladMC;
cmMc;
cmSclad;
cmOrg;
cmMen;
cmNoProd;
cmCancel;
<<
c .@@@@@@@@@@ по .@@@@@@@@@@
<. Выбрать данные за период .>
<. Фильтровать данные .>
Помесячный анализ продаж
<.МЦ-Склад-Организация-Менеджер-Город.>
<. МЦ-Город .>
<. МЦ-Склад .>
<. Итоговый отчет по МЦ .>
<. Итоговый отчет по складам .>
<. Итоговый отчет по организациям .>
<. Итоговый отчет по менеджерам .>
<. Непродаваемые препараты .>
<. Закрыть окно .>
>>
end;
handleevent
cmInit:
{
date1:=DATE(1,1,YEAR(Cur_Date));
date2:=Cur_Date;
}
cmFilt:
{
runInterface(_gt_filtanaliz);
}
cmOk:
{
var i,j,monplat:word;
var itogkol,itogsum:double;
var sum,kol:double;
Delete all from tKatsSPSopr;
dat1:=date1;
dat2:=date2;
t1:=Cur_Time;
StartNewVisual(vtRotateVisual, vfTimer+vfBreak+vfConfirm,'Идет процесс выборки данных...', RecordsInTable(#katsopr));
getfirst exclassname;
_loop katsopr
{
if getfirst tkatpodr=tsOk and getfirst tkatorg=tsOk and getfirst tmanager=tsok then
_loop spsopr
{
if getfirst tkatmc1=tsOk then
{
insert into tKatsSPSopr set
tKatsSPSopr.nrec:=spsopr.nrec,
tKatsSPSopr.data:=katsopr.dsopr,
tKatsSPSopr.corg:=katsopr.corg,
tKatsSPSopr.cpodrfrom:=katsopr.cpodrfrom,
tKatsSPSopr.cmcusl:=spsopr.cmcusl,
tKatsSPSopr.cproizw:=exclassseg.nrec,
tKatsSPSopr.kol:=spsopr.kolfact,
tKatsSPSopr.descr:=basedoc.descr,
tKatsSPSopr.sum:=If (KatSopr.vHodNal=1,(SpSopr.Price*SpSopr.KolFact-SpSopr.SumNDS),SpSopr.Price*SpSopr.KolFact);
}
//message (katsopr.dsopr + ' ' + katsopr.nsopr +' ' + spsopr.kolfact + ' '+ tKatsSPSopr.sum*1,1);
if (not nextvisual) break;
}
}
t2:=Cur_Time;
StopVisual('Данные выбраны!',0);
message('Время выборки данных :'+timetostr(sub_time(t2,t1),'HH:MM:SS:SSSS'));
//getfirst katorg where ((coGetTune('MyOrg')==katorg.nrec));
}
Как сделать чтобы tKatsSPSopr.sum учитывала еще налог НДС ? Что необходимо добавить в формуле(количество*Цену без НДС*(1+НДС%) а как на языке программирования не знаю)?(НАЛОГ 10 и 18 % . В таблице GRNAL поле KOD имеет названия 10 и 18 соответственно ). ПОДСКАЖИТЕ ПОЖАЛУЙСТА !!! ОПЫТ В ПРОГРАММИРОВАНИИ ОЧЕНЬ МАЛЕНЬКИЙ
-
- Местный житель
- Сообщения: 429
- Зарегистрирован: 24 сен 2008, 11:53
-
- Местный житель
- Сообщения: 429
- Зарегистрирован: 24 сен 2008, 11:53
-
- Местный житель
- Сообщения: 429
- Зарегистрирован: 24 сен 2008, 11:53