Страница 2 из 4

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 08:51
rudm
Спасибо. А я думал хватит одного #declare перед объявлением и одного #end
Позакрывал все
#declare
#end'ами И на всякий случай добавил все инклуды.

Получился вот такой проект

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

#include Defs.inc
#include dictypes.def
#include glodefs.inc
#include PreDefs.inc 
#include galnet.ccm 
#include galnet.csc 
#include fldcolor.inc 
#include GLOCONST.INC
#include MCOriginCountry.vih end;
#include ExtAttr.vih
#include ExtClass.vih
#include Commission.vih
const
#include Commonc.inc
#include gloconst.inc
end;

#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)+' %')
#ifndef __MCORIGINCOUNTRY_VIH
#define __MCORIGINCOUNTRY_VIH
#component "L_SF"
#end

#make "SFBLANK_RTF_02_MY_SCHFREES.rtf"
#make "SFBLANK_TULIK_ONEGINA.rtf"
#make "SFBLANK_TULIK_PROKOPENKO.rtf"
#make "SFBLANK_ZACEPINA_ONEGINA.rtf"
#make "SFBLANK_ZACEPINA_PROKOPENKO.rtf"
Хм, и пишет опять

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

MCORIGINCOUNTRY.VIH(16) Ошибка: Ожидался идентификатор (стр.16, поз.1 в MCORIGIN
COUNTRY.VIH)
#component "L_SF"
^
То есть как то надо видимо еще доопределить какие то параметры для L_SF, а вот какие? Или я ошибаюсь и это синтаксические ошибки у меня просто?

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 09:20
KATZ
Константы надо end;-ом закрыть:

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

#include GLOCONST.INC
end;
#include MCOriginCountry.vih
И проверьте, чтобы в самом начале определение #define ComponentVersion присутствовало.

P. S. Механически вставлять куски кода в свои проекты - не лучший вариант. Попытайтесь вникнуть в код и понять смысл, тогда и решение сами найдете.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 09:49
rudm
Спасибо за ответ. Я бы с радостью, но времени нет, на досуге попробую разобраться конечно.
Сейчас просмотрю код и постараюсь разобраться.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 10:38
rudm
Начал все сначала итак

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

#define ComponentVersion
const
#include GLOCONST.INC
end;
#include MCOriginCountry.vih

#make "SFBLANK_RTF_02_MY_SCHFREES.rtf"
#make "SFBLANK_TULIK_ONEGINA.rtf"
#make "SFBLANK_TULIK_PROKOPENKO.rtf"
#make "SFBLANK_ZACEPINA_ONEGINA.rtf"
#make "SFBLANK_ZACEPINA_PROKOPENKO.rtf"
ругается на старую ошибку

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

SFBLANK_RTF_02_MY_SCHFREES.RTF(75) Ошибка: Нет такой функции, поля или метода :
#F_ (стр.75, поз.8 в SFBLANK_RTF_02_MY_SCHFREES.RTF)
    #f_(MyOrgName),
       ^
Значит все же надо вставлять код

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

#declare f_(str_)
if (trim(#str_) = '', '-', #str_)
#end
Выдает ошибку

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

SFBLANK_ZACEPINA_ONEGINA.RTF(177)
SFBLANK_ZACEPINA_PROKOPENKO.RTF(177) Ошибка: Нет такой функции, поля или метода
: #SPNAME (стр.177, поз.1 в SFBLANK_ZACEPINA_PROKOPENKO.RTF)
if (trim(if (SpPrMC = 3, '', SpUchEd)) = '', '-', if (SpPrMC = 3, '', SpUchEd))
^
Значит надо делать инклуды

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

#define ComponentVersion
#include Predefs.inc
#include MCOrigincountry.vih
#include ExtAttr.vih
#include ExtClass.vih
#include Commission.vih
#include Defs.inc
#include dictypes.def
#include glodefs.inc
нет, толку нет,

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

SFBLANK_ZACEPINA_ONEGINA.RTF(177)
SFBLANK_ZACEPINA_PROKOPENKO.RTF(177) Ошибка: Нет такой функции, поля или метода
: #SPNAME (стр.177, поз.1 в SFBLANK_ZACEPINA_PROKOPENKO.RTF)
if (trim(if (SpPrMC = 3, '', SpUchEd)) = '', '-', if (SpPrMC = 3, '', SpUchEd))
значит надо переопределять в коде как то. Делаем

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

#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
Ругается на

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

SFBLANK_ZACEPINA_PROKOPENKO.RTF(180) Ошибка: Нет такой функции, поля или метода
: С (стр.180, поз.26 в SFBLANK_ZACEPINA_PROKOPENKO.RTF)
  if (SpPrMC = 3, '0.0', if (abs(SpPrNoNds/koef) > 0.001, DoubleToStr(SpPrNoNds/
koef, С\2p[|-]3666666666666666.88Т),if(wGetTune(СCountryТ)=0,'-',ТТ))
)
Тут затык. Опять не хватает ресурсов?

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 10:53
KATZ
По последней ошибке:
if (SpPrMC = 3, '0.0', if (abs(SpPrNoNds/koef) > 0.001, DoubleToStr(SpPrNoNds/koef, С\2p[|-]3666666666666666.88Т),if(wGetTune(СCountryТ)=0,'-',ТТ))
Сдается мне, что вместо букв (выделены жирным) должны быть одинарные кавычки. Скопипастилось криво?

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 11:09
rudm
Да вроде нет.
В проекте стоят одинарные кавычки (открываю AkelPad'ом) из под тотал командера.
А нет, сейчас посомтрел внимательно - действительно криво скопипастилось
теперь выдает вот что

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

SFBLANK_ZACEPINA_ONEGINA.RTF(198)
SFBLANK_ZACEPINA_PROKOPENKO.RTF(198) Ошибка: Нет такой функции, поля или метода
: FEDIZM.GETAKTOTPEDNAME (стр.198, поз.37 в SFBLANK_ZACEPINA_PROKOPENKO.RTF)
  SpUchEd :=  fEdIzm.GetAktOtpEdName(SpSchf.CMCUSL, SpPrMC);
                                    ^
То есть, не хватате какого то ресурса опять. Хм, вопрос какого?

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 11:13
edward_K
Т например появляется при копирование из word в текст одинарных ковычек(они там не обычный ' а с наклоном по умолчанию). Если объявление в таком виде в rtf компилятор прожевывает, то в тексте уж извиняйте он не знает что делать уже с T.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 11:19
rudm
вы были правы, криво скопипастилось (
Сейчас попробую еще подключить ресурсы, все которые есть, может в них нужная функция найдется.
Попробую подключить все ресурсы вообще, при помощи директивы /i как советовал RAJAH
Хотя, они в vip.cfg и так уже все подключены^

/resources=e:\GAL\GAL_200111\GAL810\exe\COMPDATA.RES

Посмотрел код, ругается на эту строчку.

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

SpUchEd :=  fEdIzm.GetAktOtpEdName(SpSchf.CMCUSL, SpPrMC);
Осталось понять, откуда брать fEdIzm. потому что GetAktOtpName это его метод как я понимаю.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 11:55
Polimer
1. Для начала, посмотрите в SRC любую RTF на базе прототипа. Там стоит перед linkform:

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

#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
2. Проект я вам давал.
3. В CFG проекта добавьте строки /i:, например мои:

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

/i:D:\gal810\src_new\inc;
/i:D:\gal810\src_new\Components\lih;
/i:D:\gal810\src_new\CompSrc\C\C_ExtClass\vip\extclass\
/i:D:\gal810\src_new\CompSrc\C\C_ExtClass\vip\ExtAttrClass\
/i:D:\gal810\src_new\CompSrc\C\C_ExtClass\vip\ExtAttr\
/i:D:\gal810\src_new\CompSrc\C\C_ExtClass\vip\ExtClass\
/i:D:\gal810\src_new\CompSrc\F\F_Common\Frm\
/i:D:\gal810\src_new\CompSrc\L\L_PrnSopr\frm\ 
/i:D:\gal810\src_new\CompSrc\F\F_OS\FRM\
/i:D:\gal810\src_new\CompSrc\L\L_SF\vip\SchServ\
/i:D:\gal810\src_new\CompSrc\F\F_Common\Vip\Commission\
/i:D:\gal810\src_new\CompSrc\L\L_Rozn\frm\
/i:D:\gal810\src_new\CompSrc\L\L_SF\frm\
/i:D:\gal810\src_new\CompSrc\L\L_PrnSopr\vip\
/env:galnet
Успехов!

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 12:47
rudm
Большое спасибо
Распаковал galFRM.rar в папку проекта
создал makerft.cfg

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

/i:D:\gal810\src_new\inc;
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\Components\lih;
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\C\C_ExtClass\vip\extclass\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\C\C_ExtClass\vip\ExtAttrClass\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\C\C_ExtClass\vip\ExtAttr\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\C\C_ExtClass\vip\ExtClass\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\F\F_Common\Frm\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_PrnSopr\frm\ 
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\F\F_OS\FRM\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_SF\vip\SchServ\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\F\F_Common\Vip\Commission\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_Rozn\frm\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_SF\frm\
/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_PrnSopr\vip\
/env:galnet
Проект makertf.prj

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

#include Predefs.inc
#include MCOrigincountry.vih
#include ExtAttr.vih
#include ExtClass.vih
#include Commission.vih
const
#include Commonc.inc
#include gloconst.inc
end;
#include Defs.inc
#include dictypes.def
#include glodefs.inc

#make "SFBLANK_RTF_02_MY_SCHFREES.rtf"
#make "SFBLANK_TULIK_ONEGINA.rtf"
#make "SFBLANK_TULIK_PROKOPENKO.rtf"
#make "SFBLANK_ZACEPINA_ONEGINA.rtf"
#make "SFBLANK_ZACEPINA_PROKOPENKO.rtf"
vip.cfg

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

vip.VisibleAllInterface=on
/env:"galnet"
! Тип визуализации по умолчанию (NUMERIC, INDICATOR или ROTATE)
!/visual:numeric
! Уровень выдачи диагностики (0-только Error, 1-Warning и Error, 2-Warning, Info, Error)
//resources=C:"2"
! Формировать Include-файлы в результате компиляции
/i-
! Путь на каталог, где будут храниться отчеты и другие выходные
! данные (например, .\OUT)
/o:incviplo
! При задании файлов по маске, искать также файлы в поддиректория
/d
! Результат компиляции сохранять в ресурсе
/r+
! Формировать листинги в результате компиляции
/L+
/f

[database]
  databasename=e:\DataBases\IMGK_310510\DATA\

[common]
  trimfilename=true

[HardwareKey]
  SharedPath=\\server\gal\hwdir

[LicParam]
  LicFileName=\\tower\gal\LIC\support.lic

! Ресурсы, автоматически открывающиеся при старте программы
/resources=e:\GAL\GAL_200111\GAL810\exe\COMPDATA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_CORPO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_AVIZO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_PLPORREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_VZACHET.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\GALHELP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\GALINFO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFFRECRUITING.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_CALC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_MP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_PAYREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFFBUILDER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFFREPORTS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STATIS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_NDFL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_FOT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_SREDN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_ZAR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_WT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_TARSTAV.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFFTEST.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFFCAT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_STAFF.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_PFREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_MGTS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_LSCHET.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_KATPODR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\Z_CALENDAR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_UP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_TRANSP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_TPP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_SKLPLAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_SERV.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_SCRIPTS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_QUALITY.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_MNPLAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_DVS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_GETPOTR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_EIXML.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\M_CONTROL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_XLSREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_VEKS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_VEDOM.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_VALUTDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_UTILS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_USERREPORT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_TXOAPI.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_TXO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_TREENEW.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_TEMPLATE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_TAXES.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_SOPRHOZ.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_SHTRAF.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_SFO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_SALDO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_RTXO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_POST.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_PODOT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_PLPOR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_PLANSSCH.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_PAT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OSREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OSOPER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OSINVCARD.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OFP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_OBOROT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_NALOGREG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_MBPPUB.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_MBP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_KATKOD.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_KATDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_ISKI.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_GETAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPOBOROT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPKATH.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPHASHAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPCATALOG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPBUDGET.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FPADDFLD.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FILIAL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_FA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_EXTAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_DRAGM.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_DOCOB.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_DISTPL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_DIFFRATE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_CONSOL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_COMMON.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_CLOSCH.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_CASHBANK.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_BUHSCHET.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_BUHREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_BANKDOCF.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_BACKLOG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_APLAN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_AN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\F_ALG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\EXTFUN_WT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\EXTFUN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_VPR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_VAL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_UKSPLANS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_UKS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_TTNDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SPEXCH.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SOPRDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SMETA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SKLAD.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SKID.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SF.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SERIALN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_SALDOMTR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_ROZN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_RETTARA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_RESERVE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_REPOPER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_REPBASEDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_REMONT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_REALTING.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_PRNSOPR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_PRICES.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_PLANPR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_PHONECARD.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_OSTATKI.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_NALNAKL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_NALOG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MOVECELL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MOL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MCU.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MARKET.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MAKENAKL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_MAKEDO.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_KONTRBAL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_KATPARTY.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_KATORG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_KATNAZNA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_KASSA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_GRSOPR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_GRSCH.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_GRPLAT.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_DOVER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_DOGOVOR.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_CRM.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_CONSIG.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_COMMON.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_CESSIA.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_CALCUSL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_BOX.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_BASEDOC.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\L_ADVREP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_WEBSERVICES.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_USERMANUAL.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_TREETUNE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_TREE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_STATLINE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_PARTNER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_OLAP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_MAILER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_JOIN.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_EXPIMP.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_CHECKOPER.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_CHECKKBU.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_EXTCLASS.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_TUNE.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\C_COMMON.RES
/resources=e:\GAL\GAL_200111\GAL810\exe\ATLHELP.RES
compil.bat (cобственно им и запускаю)

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

E:\GAL\GAL_200111\GAL810\exe\vip.exe makertf.prj /r:debug.res /f
pause
Cама форма

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

#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
Ошибка:

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


SFBLANK_RTF_02_MY_SCHFREES.RTF(218) Ошибка: Нет такой функции, поля или метода :
 FEDIZM.GETAKTOTPEDNAME (стр.218, поз.37 в SFBLANK_RTF_02_MY_SCHFREES.RTF)
  SpUchEd :=  fEdIzm.GetAktOtpEdName(SpSchf.CMCUSL, SpPrMC);
                                    ^
То есть, какой то видимо уникальный ресурс все же нужен, не из galFRM, а вот откуда?

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 13:04
KATZ
Нужен, вероятно, файл oEdIzmV3.vih, и еще надо подключить oEdIzm.var, в котором описана переменная fEdIzm (или самому ее описать).

Я так понимаю, что эти отчеты достались по наследству, раньше они нормально компилировались и работали. Лучше было отталкиваться от рабочего проекта и понемногу в нем что-то поправлять, после каждой правки проверяя результат.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 13:05
Polimer
Откуда вы взяли эту функцию, в СФ я такой не нашел.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 13:14
rudm
Нам достался от Москвы в виде *.res-файла. Теперь бухгалтерия требует его доработать (А что так медленно то - у нас же другие *.rtf формы быстро перекомпилируються) и я имею на руках только исходный текст самой формы и все.

Спасибо за наводку - сейчас поищу в ресурсах эти библиотеки (Как я понял vih в Атлантисе это аналог dll - то есть библиотеки подключаемых функций?)

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 13:23
rudm
Удалось найти oEdIzmV3.vih а вот oEdIzmV3.vih.var пока найти не получается. Если кто то сможет выложить, буду благодарен.

Re: Необходимые для компиляции ресурсы - как узнать?

Добавлено: 26 янв 2011, 13:30
rudm
А, вот, нашел.
Хм, он у меня в распакованных ресурсах оказывается уже есть.
e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_MCU\vip\KatEdIzm\oEdIzm\
осталось пропсиать в конфигурации проекта

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

/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_MCU\vip\KatEdIzm\oEdIzm\
Эмм, да.

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

SFBLANK_RTF_02_MY_SCHFREES.RTF(218) Ошибка: Нет такой функции, поля или метода :
 FEDIZM.GETAKTOTPEDNAME (стр.218, поз.37 в SFBLANK_RTF_02_MY_SCHFREES.RTF)
  SpUchEd :=  fEdIzm.GetAktOtpEdName(SpSchf.CMCUSL, SpPrMC);
                                    ^
Видимо нужна какая то действительно уникальная библиотека.
Нашел еще некий UOEDIZM
Прописываю

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

/i:e:\GAL\GAL_200111\GAL810\exe\IMGK_FORMS\RTF_buh\CompSrc\L\L_MCU\frm\
запускаю. то же самое. Такое впечатьление, что при сборке использовалась какая то уникальная библиотека действительно, под названием fEdIzm