Показать сообщение отдельно
Старый 06.04.2011, 21:59   #9  
jopagames2 is offline
jopagames2
Участник
 
151 / 11 (1) +
Регистрация: 11.02.2010
Цитата:
Сообщение от Sancho Посмотреть сообщение
знаю я этого клиента.
там ошибки в применении товарных операций, прежде всего.
то-ли минус-контроль снимался, то-ли что-то наковыряли в функционале.
короче, моя рекомендация - ввод остатков, а не коррекция себестоимости.
Ага, Серджио! Попал в точку. Оне ))
С начала 2011 года этого клиента "уже знают", кроме меня, минимум 2 внедренца (а я с 1-го апреля у них типа третий)

В любом случае, всем огромное спасибо.
Пробовал и по методу RMV и "галку снимал", как советовал Prefreitor (хотя я и сам про это помнил) - всё пока без толку
Там себестоимость(795 ф топку!) сугубо самописная. А в ничего не подозревающий функционал от 4.0 добавлено более 1000 новых объектов.

Рестарт базы и ввод остатков - это выход, это я полностью с тобой согласен.
Но! Но не за 30 тонн (пусть даже и "белого") оклада в месяц, как предлагается (против почти 6 лямов партнёрам за несостоявшееся прошлогоднее внедрение)

Думаю, тема коррекции закрыта.
Всем удачи!

ЗЫ: Говнокод: Ахтунг! Нашёл в базе. Просто приколоться(это выдержка из отчёта). И оно там у них живёт и причём ПРАВИЛЬНО РАБОТАЕТ!!!

//////////////////////////////////////////////////////////////////////////////////


IF SIH.FINDSET THEN REPEAT
IF ArhS.GET(SIH."Srv Order No.",SIH."Invoice Key") THEN BEGIN;
IF ArhS."Depart Code" = 'КУЗ' THEN BEGIN;

SIH.CALCFIELDS("Amount Including VAT");
IF SIH."Invoice Key"= 'П1' THEN BEGIN
kZN+=1;
END;

IF SIH."Invoice Key"= 'П2' THEN BEGIN
kZN+=1;
END;
IF SIH."Invoice Key"= 'П3' THEN BEGIN
kZN+=1;
END;
IF SIH."Invoice Key"= 'П4' THEN BEGIN
kZN+=1;
END;
IF SIH."Invoice Key"= 'Г1' THEN BEGIN
kZNg+=1;
END;
IF SIH."Invoice Key"= 'Г2' THEN BEGIN
kZNg+=1;
END;
IF SIH."Invoice Key"= 'С1' THEN BEGIN
kZNs+=1;
END;
IF SIH."Invoice Key"= 'С2' THEN BEGIN
kZNs+=1;
END;
IF SIH."Invoice Key"= 'С3' THEN BEGIN
kZNs+=1;
END;
IF SIH."Invoice Key"= 'С4' THEN BEGIN
kZNs+=1;
END;
IF SIH."Invoice Key"= 'С5' THEN BEGIN
kZNs+=1;
END;
IF SIH."Invoice Key"= 'С6' THEN BEGIN
kZNs+=1;
END;


SIL.SETRANGE(SIL."Document No.", SIH."No.");
IF SIL.FINDSET THEN REPEAT
IF SIH."Invoice Key"= 'П1' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclt+=SIL.Quantity;
kSummAIV+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'П2' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclt+=SIL.Quantity;
kSummAIV+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'П3' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclt+=SIL.Quantity;
kSummAIV+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'П4' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclt+=SIL.Quantity;
kSummAIV+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'Г1' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kcltg+=SIL.Quantity;
kSummAIVg+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'Г2' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kcltg+=SIL.Quantity;
kSummAIVg+=SIL."Amount Including VAT (LCY)";
END;
END;

IF SIH."Invoice Key"= 'С1' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'С2' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'С3' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'С4' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'С5' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'С6' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kclts+=SIL.Quantity;
kSummAIVs+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'ППБУ' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
rabPPBUr+=SIL."Amount Including VAT (LCY)";
rabPPBU+=SIL.Quantity;
END;
END;
IF SIH."Invoice Key"= 'ППБУ' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
sumPPBUt+=SIL."Amount Including VAT (LCY)";
END;
END;
IF SIH."Invoice Key"= 'ППНА' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
rabPPNA+=SIL.Quantity;
END;
END;
IF SIH."Invoice Key"= 'ППНА' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
sumPPNA+=SIL."Amount Including VAT (LCY)";
END;
END;


IF Itm.GET(SIL."No.") THEN BEGIN
IF Itm."Item Group"='F' THEN BEGIN;
IF SIH."Invoice Key"= 'П1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmag+=SIL."Amount Including VAT (LCY)";
kcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;

IF SIH."Invoice Key"= 'П2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmag+=SIL."Amount Including VAT (LCY)";
kcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'П3' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kvirmag+=SIL."Amount Including VAT (LCY)";
kcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'П4' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmag+=SIL."Amount Including VAT (LCY)";
kcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'Г1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
gkvirmag+=SIL."Amount Including VAT (LCY)";
gkcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'Г2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
gkvirmag+=SIL."Amount Including VAT (LCY)";
gkcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С3' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С4' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С5' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С6' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmag+=SIL."Amount Including VAT (LCY)";
skcostmag+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
END;


IF Itm."Item Group"<>'F' THEN BEGIN;
IF SIH."Invoice Key"= 'П1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmagPROCH+=SIL."Amount Including VAT (LCY)";
kcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;

IF SIH."Invoice Key"= 'П2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmagPROCH+=SIL."Amount Including VAT (LCY)";
kcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'П3' THEN BEGIN;
IF SIL.Type=1 THEN BEGIN;
kvirmagPROCH+=SIL."Amount Including VAT (LCY)";
kcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'П4' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
kvirmagPROCH+=SIL."Amount Including VAT (LCY)";
kcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'Г1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
gkvirmagPROCH+=SIL."Amount Including VAT (LCY)";
gkcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END;
IF SIH."Invoice Key"= 'Г2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
gkvirmagPROCH+=SIL."Amount Including VAT (LCY)";
gkcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С1' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С2' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С3' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С4' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С5' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
IF SIH."Invoice Key"= 'С6' THEN BEGIN;
IF SIL.Type=2 THEN BEGIN;
skvirmagPROCH+=SIL."Amount Including VAT (LCY)";
skcostmagPROCH+=SIL.Quantity*Itm."Last Direct Cost";
END;
END ;
END;

END;

UNTIL SIL.NEXT = 0;
END;
END;
UNTIL SIH.NEXT = 0;

ikZN:=kZN+kZNs+kZNg;
ikSummAIV:=kSummAIVs+kSummAIV+kSummAIVg;
ikg:=kclts+kclt;

skitogkol:=ikZN+iZN;
skitogtime:=ikg+ig;
skitogsumm:=ikSummAIV+iSummAIV;

itotgomagvir:=slvirmag+gslvirmag+kvirmag+gkvirmag+skvirmag+ProdMagFord+optProdMagFord;
itogomagcost:=slcostmag+gslcostmag+kcostmag+gkcostmag+skcostmag+ProdMagFordcost+optProdMagFordcost;

itotgomagvirPROCH:=slvirmagPROCH+gslvirmagPROCH+kvirmagPROCH+
gkvirmagPROCH+skvirmagPROCH+ProdMagPROCH+optProdMagPROCH;
itogomagcostPROCH:=slcostmagPROCH+gslcostmagPROCH+kcostmagPROCH+gkcostmagPROCH+
skcostmagPROCH+ProdMagPROCHcost+optProdMagPROCHcost;



// ну и дальше примерно в таком же духе