Настройка компилятора VIP

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

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

niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Настройка компилятора VIP

Сообщение niteo »

Доброго всем времени. Возникла трудность с настройкой строчного компилятора. Смотрел http://www.tyumbit.ru/gal_forum/viewtop ... env+galnet]
и это http://www.tyumbit.ru/gal_forum/viewtopic.php?t=10105
но ясности не добавилось. Вот мой файл настроек:

vip.cfg

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

[Login]
  Username=admin
  Password=qwerty

[HardwareKey]
  SharedPath=\\srv11\HWKey\
  
[LicParam]
  LicFileName=\\srv11\galsrv\support\license.lic

[DataBase]
  DataBaseName=gal
  DataBaseDriver=ora90drv.dll
  CheckRepository=off

[SQLDriver]
  SQLServer=GALONF
  ForceRights=On
  FullLoginName=On
  database.databasename=gal

[Compilers]
  IncludesPath=E:\GALONF\FRM\Inc
  IncludesPath=E:\GALONF\FRM\VIL
  IncludesPath=E:\GALONF\FRM\VIH
  IncludesPath=E:\GALONF\FRM\lih
  IncludeCache=on
  MinVisual=on
  OutputResourceName=debug_test.res

[Files]
  TmpFilesDirectory=%ApiTempPath%\Tmp\Vip
  FileHandles=220


[Vip]
//  NoTablesInComponent = On
  Debug=On
  LocalDebug=1


[System]
  OpenResources = %ApiExePath%\extfun.res
  OpenResources = %ApiExePath%\C_Common.res
  OpenResources = %ApiExePath%\L_KatOrg.res
  OpenResources = %ApiExePath%\L_PrnSopr.res
  OpenResources = %ApiExePath%\L_SoprDoc.res

[Lot]
  FileTableInMemory=on
По поводу [Compilers] Я как рекомендовали в http://www.tyumbit.ru/gal_forum/viewtopic.php?t=10105 извлек все файлы из архивов клиента. Потом сделал поиск всех *.lih *.vih *.vil и скопировал их в соответствующие директории LIH VIH VIL. Файл vip.exe скачал с ftp.galaktika. Делаю компиляцию моего проекта, выдает сообщение:
  • C:\Userdata\Project\Project_DR>user.bat project_test.prj
    The filename, directory name, or volume label syntax is incorrect.
    Interface compiler. Версия 5.4.23 (c) 1992-2009, корпорация "Галактика"

    dialogtest2.vip(1) Предупреждение: Не задано имя компонента, компонентная принад
    лежность таблиц учитываться не будет (стр.1, поз.1 в dialogtest2.vip)
    interface dialogtest 'dialogtest'; //
    ^

    dialogtest2.vip(36)
    FORM_TEST.FRM(12)
    FORM_TEST.FRM(10) Предупреждение: Не найден объект IVIPIFCIFC PICKCATALOG2, опис
    ывающий интерфейс вызова. Параметры вызова для PICKCATALOG2 не проверены. (стр.3
    1, поз.76 в DIALOGTEST2.VIP)


    FORM_TEST.FRM(11)
    C:\Userdata\Project\Project_DR\project_test.prj(11)
    C:\Userdata\Project\Project_DR\project_test.prj

    Время компиляции 2.9 сек.
    C:\Userdata\Project\Project_DR>
На выходе формируется рессурсник размером 136 байт. При его подключении отчета в системе не видно. Как я понял какая то ошибка с вызовом интерфейса PICKCATALOG2 Видимо неправильно указал пути....
Прошу вас помочь разобраться в чем я не прав....
ilshat
Местный житель
Сообщения: 222
Зарегистрирован: 04 июн 2008, 14:35
Откуда: Стерлитамак
Контактная информация:

Сообщение ilshat »

где код project_test.prj ? в нем же как раз собака зарыта...
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

Вот project_test.prj:

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

//#define ComponentVersion
// Макроопределения
#include PreDefs.inc
#include GloDefs.inc
//Объекты
#include ExtAttr.vih
//Формы
#make "dialogtest2.vip"
#make "form_test.frm"
Подскажите где прочитать, какие вообще сюда надо включать файлы? И зачем?
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

Вот form_test.frm:

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

.form 'ODKrepSP'
.nameinlist 'Отчет СП по подразделениям1'
.ard
.begin
        if RunInterface('dialogtest') <> cmCancel then
        {
                ODKrepSP.fExit;
        }
end.
.endform
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

И сам интерфейс dialogtest2.vip:

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

interface dialogtest 'dialogtest'; //
create view;
var
  cpodr: comp;
  mes: integer;
  god:  integer;
  DepartmentFilterStr: string;

screen scrtest;
fields
        mes;
        god;
        DepartmentFilterStr ('Filter by filial'): protect, pickbutton;
buttons
        cmOk, default;
        cmCancel;
<<'Please input correct data'

 `Month` .@@@     `Year` .@@@@@

 `Filter:`
    `by filial`   .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

<.OK.> <.Cancel.>
>>
end;
//------------------------------------------------
HANDLEEVENT
cmPick:
  case CurField of
      #DepartmentFilterStr :  RunInterface('PickCatalog2', -11, cpodr, 100);
  end;
end;
end.
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Сообщение Masygreen »

в ард вроде надо добваить
.Table Blank - У вас же нет корневых таблиц...
в project_test.prj на вскидку нехватает end ... а лучше уберите совсем все инклуды вы же ими не пользуетесь
Время ведет!
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

Masygreen писал(а):в ард вроде надо добваить
.Table Blank - У вас же нет корневых таблиц...
в project_test.prj на вскидку нехватает end ... а лучше уберите совсем все инклуды вы же ими не пользуетесь
Убрал все инклуды. сейчас выглядит так:

project_test.prj

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

#make "dialogtest2.vip"
#make "form_test.frm"
Добавил .table blank
Изменил .form на .autoform так компилятор попросил....
Результат: На выходе ресурсник в 136 байт.
Вот сообщение компилятора:
  • C:\Userdata\Project\Project_DR>user.bat project_test.prj
    The filename, directory name, or volume label syntax is incorrect.
    Interface compiler. Версия 5.4.23 (c) 1992-2009, корпорация "Галактика"

    dialogtest2.vip(1) Предупреждение: Не задано имя компонента, компонентная принад
    лежность таблиц учитываться не будет (стр.1, поз.1 в dialogtest2.vip)
    interface dialogtest 'dialogtest'; //
    ^

    dialogtest2.vip(36)
    FORM_TEST.FRM(13)
    FORM_TEST.FRM(3) Предупреждение: Не найден объект IVIPIFCIFC PICKCATALOG2, описы
    вающий интерфейс вызова. Параметры вызова для PICKCATALOG2 не проверены. (стр.31
    , поз.76 в DIALOGTEST2.VIP)


    FORM_TEST.FRM(4)
    C:\Userdata\Project\Project_DR\project_test.prj(4)
    C:\Userdata\Project\Project_DR\project_test.prj

    Время компиляции 2.8 сек.
    C:\Userdata\Project\Project_DR>
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

Всётаки кажется, что проблема именно в необноружении PICKCATALOG2. Так как при сборке проекта без интерфейса, все получается нормально, только ругается при запуске ARD, на то что не смог найти требуемый интерфейс.
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Сообщение Masygreen »

в project_test.prj первой строчкой ..
#define ComponentVersion

кроме того где текст батника которым собираете??
Время ведет!
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Сообщение Masygreen »

в своем интерфейсе вы вызываете еще один интерфейс PickCatalog2 .. а где его описание?
Время ведет!
KATZ
Местный житель
Сообщения: 473
Зарегистрирован: 29 мар 2005, 17:49

Сообщение KATZ »

Интерфейс PickCatalog2 из компонента Z_STAFFCAT, его надо при вызове указать и в OpenResources не забыть включить.

Хотя, судя по размеру файла в 136 байтов, дело не только в этом. Тут уже многие натыкались на проблемы при несовпадении версий VIP.EXE и COMPDATA.RES, убедитесь, что второй файл у вас тоже с версией 5.4.23.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

обычно такая тробла связана в ошибке с лицензией или каталога аппаратного ключа. Иногда с runtime - но тогда и лог не формируется. А compdata.res вроде нет в сfg - разве что vip новый, а каталог где он лежит не пропатчен. добавте к запуску vip /r - запустится собственно vip. И почистите мусор в каталоге vip - может вы все таки не доходите до формирования лога.
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Сообщение Masygreen »

KATZ писал(а):Интерфейс PickCatalog2 из компонента Z_STAFFCAT, его надо при вызове указать и в OpenResources не забыть включить.

Хотя, судя по размеру файла в 136 байтов, дело не только в этом. Тут уже многие натыкались на проблемы при несовпадении версий VIP.EXE и COMPDATA.RES, убедитесь, что второй файл у вас тоже с версией 5.4.23.
тогда логичнее его будет вызывать Z_STAFFCAT::PickCatalog2 ??
Время ведет!
empyros
Постоянный обитатель
Сообщения: 174
Зарегистрирован: 21 май 2009, 20:30
Откуда: Беларусь

Сообщение empyros »

Начать программировать просто? какой тут Ribbon интерфейс? :-)
Там не подключил, здесь не совпало, потом забыл, потом то же самое но в другой последовательности :???:
Нет, не получится из меня программиста :shock:
niteo
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 17 сен 2009, 11:39
Контактная информация:

Сообщение niteo »

батник user.bat:

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

@echo off
call sets.bat
%ApiExePath%\vip.exe /r %1
батник sets.bat:

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

@echo off
set ApiExePath=E:\GalONF\Support\Exe
set ApiResPath=E:\GalONF\Exe
set ApiTempPath=Temp
Изменил пути в vip.cfg в [System] так как там была ссылка на
%ApiExePath% а надо %ApiResPath%

Изменил вызов интерфейса на Z_STAFFCAT::PickCatalog2
При компиляции говорит:
  • C:\Userdata\Project\Project_DR>user.bat project_test.prj
    Interface compiler. Версия 5.4.23 (c) 1992-2009, корпорация "Галактика"

    dialogtest2.vip(1) Предупреждение: Не задано имя компонента, компонентная принад
    лежность таблиц учитываться не будет (стр.1, поз.1 в dialogtest2.vip)
    interface dialogtest 'dialogtest'; //
    ^

    dialogtest2.vip(36)
    FORM_TEST.FRM(13)
    FORM_TEST.FRM(3) Предупреждение: Не найден объект IVIPIFCIFC Z_STAFFCAT::PICKCAT
    ALOG2, описывающий интерфейс вызова. Параметры вызова для Z_STAFFCAT::PICKCATALO
    G2 не проверены. (стр.31, поз.88 в DIALOGTEST2.VIP)


    FORM_TEST.FRM(4)
    C:\Userdata\Project\Project_DR\project_test.prj(4)
    C:\Userdata\Project\Project_DR\project_test.prj

    Время компиляции 4.0 сек.

    Запустить интерактивный отладчик? [ Enter-продолжить ESC-отмена ] : отмена.
    C:\Userdata\Project\Project_DR>
на выходе тот же ресурсник в 136 байт.
Как я понял он не может найти интерфейс Z_STAFFCAT::PickCatalog2
Подскажите где его прописать?
И еще вопрос, что это за фраза компилятора:
Не задано имя компонента, компонентная принад
лежность таблиц учитываться не будет
что она значит?
Ответить