докомпиляция SoprDocB

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
mwoland

докомпиляция SoprDocB

Сообщение mwoland »

Пытаюсь докомпилировать soprdocb.
Исходники:
файл make.prj

Код: Выделить всё

#include mysoprdoc.vih
#make "alter_soprdocb.vip"
Файл mysoprdoc.vih

Код: Выделить всё

#component "L_SoprDoc"
ObjInterface SoprDocBObj;
Function AktSopUslForm(pNakl : comp; WithCheck : boolean) : boolean;
end;
ObjInterface SoprDocBObj1;
Procedure RecalcSoprDocB;
Function CheckSoprOrdB(var aSPodr: comp;  var aSMol: comp; CheckMOL: boolean): boolean;
end;
ObjInterface SoprDocBObj2;
Procedure _SetTypeSopr(wSopr: word);
end;
ObjInterface SoprDocBObj4;
Function CanDeleteSoprDocumentOnBaseDoc(pNRec: comp):boolean;
Function DeleteSoprDocument(pNrec:comp):boolean;
end;
ObjInterface SoprDocBObj5;
Function MakeOrderByKatSopr(cSopr_: comp; showMess_: boolean; var prRozn_: boolean): boolean;
end;
ObjInterface ObjBeforeDelSopr;
function BeforeDeleteKatSopr(pNRec: comp;isWarnings,isVisual: boolean) : boolean;
end;

VipInterface SoprDocB_Release implements SoprDocBObj,SoprDocBObj1,SoprDocBObj2,SoprDocBObj4,SoprDocBObj5,objBeforeDelSopr
licensed(buy,otprcons,stroy)
Parameters (TypeSopr: word; pNRec: comp);

//VipInterface SoprDocB implements SoprDocBObj,SoprDocBObj1,SoprDocBObj2,SoprDocBObj4,SoprDocBObj5,objBeforeDelSopr
//licensed(buy,otprcons,stroy)
//Parameters (TypeSopr: word; pNRec: comp);
VipInterface SoprDocB(SoprDocB_Release);
public:
  Procedure TuneEditSopr;
end;
Файл alter_soprdocb.vip

Код: Выделить всё

alter interface SoprDocb ('')
  overload
  end;
    handleevent
      cmPick: {
        message('cmPick2');
        inherited::handleEvent(cmPick);
      }
      cmDefault: {
        message('cmdefault');
        inherited::handleEvent(cmdefault);
      }
    end;
end.
Компилируется нормально. При запуске интерфейса со списком накладных на закупку выводится ошибка:

Код: Выделить всё

Возникло необработанное исключение
ExObjIfcNoImpl (ExRef)
Приведение L_SOPRDOC::SoprDocB к нереализованному ObjInterface
"L_SOPRDOC::o$SoprDocB_Release"
"o$SoprDocB_Release - Объектный интерфейс, автоматически создаваемый компилятором, при описании методов, свойств, индексов и/или потоков данных внутри vipInterface." - из GalSDK. Почему он не реализован, если автоматически создается компилятором?
Прошу помочь, собственно, где я накосячил?
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Re: докомпиляция SoprDocB

Сообщение galover »

Попробуй выкинуть vih файл. По нормальному и без него должно скомпилироваться - вся информация для наследования есть в ресурсе L_SoprDoc.res (подключи его в cfg файле - System.OpenResources=...L_SoprDoc.res)
Т.е. скомпилируй для начала

Код: Выделить всё

#component "L_SoprDoc"

alter interface SoprDocb;
end.
Подключи и проверь - будут ли ошибки, если нет, то добавляй уже код со своей логикой. overload end; исключи, если ничего переопределять не собираешься
mwoland

Re: докомпиляция SoprDocB

Сообщение mwoland »

Спасибо большое за помощь, galover. Ресурсник был подключен. Ошибка возникала из-за подключенного vih'а.
Ответить