Программирование на Атлантисе (VIP, FCOM, ARD), FastReport
Модераторы: m0p3e , edward_K , Модераторы
PViP
Местный житель
Сообщения: 254 Зарегистрирован: 08 июн 2007, 08:26
Откуда: Красноярск
Контактная информация:
Сообщение
PViP » 06 июн 2008, 15:00
Очень была бы рада примеру ручного создания SoprHoz и BaseFin
:[
в чем тут трудность? insert soprhoz set .... и т.д. подставляете требуемые значения поля и главное по журналу смотрите что там еще создается.
Код:
Function PlPor_Insert (bufPlPor : TPlPor) : Comp;
Добавление PlPor, с проверкой корректности и формированием SoprHoz
Здесь вам надо загрузить сначала vip interface. vih для него здесь Gal810\FRM\F_PlPor.rar\CompSrc\F\F_PlPor\Vip\PlPorSimple.vih.
Код: Выделить всё
var myPlPorSimple : PlPorSimple;
var bufPlPor : TPlPor;
......
//заполение bufPlPor
......
LoadVipInterface(myPlPorSimple);
myPlPorSimple.PlPor_Insert (bufPlPor : TPlPor);
FreeVipInterface(myPlPorSimple);
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 06 июн 2008, 15:52
Здесь вам надо загрузить сначала vip interface. vih для него здесь Gal810\FRM\F_PlPor.rar\CompSrc\F\F_PlPor\Vip\PlPorSimple.vih.
Код:
var myPlPorSimple : PlPorSimple;
var bufPlPor : TPlPor;
......
//заполение bufPlPor
......
LoadVipInterface(myPlPorSimple);
myPlPorSimple.PlPor_Insert (bufPlPor : TPlPor);
FreeVipInterface(myPlPorSimple);
Большое спасибо. Касательно ручного создания - немного начала разбираться, но очень хочется использовать интерфейс, раз уж я его подключаю.
Жаль только, что
Код: Выделить всё
LoadVipInterface(myPlPorSimple);
myPlPorSimple.PlPor_Insert (bufPlPor : TPlPor);
FreeVipInterface(myPlPorSimple);
не помогло
Да здравствует разум! Да сгинет маразм!
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 06 июн 2008, 15:54
На всякий случай привожу код:
Код: Выделить всё
//считываем значения из файла
LoadRecordFromDBF();
LoadVipInterface(piPlPor);
piPlPor.PlPor_Fill(bufPlPor, TIDKGAL, TIDK, DATVIP,0);
bufPlPor.NODOK:=NODOK;
bufPlPor.NAMEPL1:=NAMEPL1;
bufPlPor.NAMEPL2:=NAMEPL2;
bufPlPor.NAMEPL3:=NAMEPL3;
bufPlPor.NAMEPL4:=NAMEPL4;
bufPlPor.PODOTCHET:=PODOTCH;
bufPlPor.TAX:=TAX;
bufPlPor.SUMPLAT:=SUMPLAT;
bufPlPor.cplat:=GetOrg(PLAT_INN,PLAT_RS);//281474976739064;
bufPlPor.cpol:=GetOrg(POL_INN,POL_RS);//12081;
Message( 'bufPlPor.cbankplat:=GetBank(PLAT_INN,PLAT_RS)');
bufPlPor.cbankplat:=GetBank(PLAT_INN,PLAT_RS);//281474976739064;
Message( 'bufPlPor.cbankpol:=GetBank(POL_INN,POL_RS)');
bufPlPor.cbankpol:=GetBank(POL_INN,POL_RS);//12081;
Message( bufPlPor.cplat);
Message( bufPlPor.cpol);
if(piPlPor.PlPor_Check(bufPlPor,0)=false)
then message('Чтото неправильно заполнили');
Message('вставляем');
//LoadVipInterface(myPlPorSimple);
// myPlPorSimple.PlPor_Insert (bufPlPor : TPlPor);
// FreeVipInterface(myPlPorSimple);
nrec_my:=piPlPor.PlPor_Insert(bufPlPor);
FreeVipInterface(piPlPor);
вариант
Код: Выделить всё
//считываем значения из файла
LoadRecordFromDBF();
piPlPor.PlPor_Fill(bufPlPor, TIDKGAL, TIDK, DATVIP,0);
...
LoadVipInterface(piPlPor);
nrec_my:=piPlPor.PlPor_Insert(bufPlPor);
FreeVipInterface(piPlPor);
тоже не прошел
((
Да здравствует разум! Да сгинет маразм!
PViP
Местный житель
Сообщения: 254 Зарегистрирован: 08 июн 2007, 08:26
Откуда: Красноярск
Контактная информация:
Сообщение
PViP » 06 июн 2008, 16:14
eyolkina , тоесть вываливается исключение когда выполняются операции с объектным файсом или платежка не создается?
Также надо объявить #define ComponentVersion перед инклюдами vih файлов. Иначе работать ниче не будет, в следствии компонентной принадлежности!
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 06 июн 2008, 16:34
eyolkina, тоесть вываливается исключение когда выполняются операции с объектным файсом или платежка не создается?
Также надо объявить #define ComponentVersion перед инклюдами vih файлов. Иначе работать ниче не будет, в следствии компонентной принадлежности!
никакого исключения не вываливается, платежка отлично создается,
но SoprHoz и BaseFin не создаются...
Да здравствует разум! Да сгинет маразм!
Max_Fin
На пенсии
Сообщения: 797 Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:
Сообщение
Max_Fin » 06 июн 2008, 17:24
что-то не понял
сперва у вас
а только потом
поменяйте местами
Жду выхода Вселенная 2.12!
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 07 июн 2008, 08:59
поменяйте местами
в таком порядке тоже не работает... журнализация упрямо показывает создание только платежек.
может быть я забываю выхвать какой-нибудь секретный метод?
Да здравствует разум! Да сгинет маразм!
Алексей
Местный житель
Сообщения: 2896 Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область
Сообщение
Алексей » 07 июн 2008, 11:37
если ошибок при отработке методов объектного интерейса нет - значит всё ок, видимо метод не предусматривает создание хоз.операции.
попробуйте найти объектный фейс по хоз.операциям, там тоже скорее всего есть метод. А вообще, когда вы потом в платеже зайдете во вкладку хоз.операции - она создасться автоматически.
так что не так страшно - что они не создаются.
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 07 июн 2008, 11:44
если ошибок при отработке методов объектного интерейса нет - значит всё ок, видимо метод не предусматривает создание хоз.операции.
попробуйте найти объектный фейс по хоз.операциям, там тоже скорее всего есть метод. А вообще, когда вы потом в платеже зайдете во вкладку хоз.операции - она создасться автоматически.
так что не так страшно - что они не создаются
это правда - создаются. Вот думаю, может пусть остаются с вопросиком, зато сразу видно свежевыгруженные непроконтролированные платежки....
Да здравствует разум! Да сгинет маразм!
Алексей
Местный житель
Сообщения: 2896 Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область
Сообщение
Алексей » 07 июн 2008, 11:57
в принципе да, сразу знак финансисту - "быстро обработай!"
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 07 июн 2008, 14:12
в принципе да, сразу знак финансисту - "быстро обработай!"
и в инструкции как фичу описать
))))))))))))))))
Да здравствует разум! Да сгинет маразм!
Max_Fin
На пенсии
Сообщения: 797 Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:
Сообщение
Max_Fin » 07 июн 2008, 17:26
создание SoprHoz'а
Код: Выделить всё
ClearBuffer(tnSoprHoz);
SoprHoz.TiDkGal := PlPor.TiDkGal;
SoprHoz.TipDoc := Plpor.TiDk;
SoprHoz.cSoprDoc := Plpor.nRec;
SoprHoz.DesCr := PlPor.DesCr;
SoprHoz.DesGr := Plpor.DesGr;
SoprHoz.FilialNo := PlPor.FilialNo;
SoprHoz.cFilKor := Plpor.cFilKor;
SoprHoz.NoDoc := Plpor.NoDok;
SoprHoz.cHozOper := PlPor.cHozOper;
SoprHoz.Summa := PlPor.SumPlat;
SoprHoz.SumValut := PlPor.SumPlatV;
SoprHoz.KodValut := PlPor.cVal;
SoprHoz.DatOb := PlPor.DatOb;
SoprHoz.NameSHO := Trim(Trim(PlPor.NamePl1) + ' ' +
Trim(PlPor.NamePl2));
SoprHoz.VhSumHoz := '+' ;
SetBitKontras(PlPor.ModeDoc, SoprHoz.ModeDoc);
insert current SoprHoz;
Жду выхода Вселенная 2.12!
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 09 июн 2008, 11:36
Max_Fin
Спасибо! Учту на будущее..
Еще вопрос: Можно ли как-нибудь определить число записей, возвращаемых при:
Код: Выделить всё
if (modifier getfirst Katorg where ((ORG_INN/==Katorg.UNN ))
)=tsOk then
begin
...
end;
Да здравствует разум! Да сгинет маразм!
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188 Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb
Сообщение
edward_K » 09 июн 2008, 12:03
была какая то переменная которая возвращала кол-во записей при груповых операциях (loop,update и так далее). tailly кажись - но она в доке не описана. loop еще почитайте. Да - modifier лучше не использовать - он вроде приводит к пересканированию экрана и тормозит выполнение.
eyolkina
Постоянный гость
Сообщения: 85 Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал
Сообщение
eyolkina » 09 июн 2008, 12:10
т.е. делать:
Код: Выделить всё
if ( getfirst Katorg where ((ORG_INN/==Katorg.UNN ))
)=tsOk then
begin
...
end;
???
еще ругается на:
Код: Выделить всё
if((getfirst Katbank where
((CORG/==Katbank.corg and ORG_RS/==Katbank.schet1 ))
)=tsOk )
Пишет: Нужен ключ на CORG+SCHET1 для KATBANK...
Я что-то не так подцепляю??? странный этот механизм с подцепками...
Да здравствует разум! Да сгинет маразм!