IF (EXISTS(Select * from sys.sysprocedure where LCase(proc_name) = LCase('FillServicesForBill'))) THEN Drop procedure FillServicesForBill END IF GO create procedure DBA.FillServicesForBill(in @ArticleNumber integer,in @ArticleName varchar(40),in @Qty integer,in @ArticlePrice double,in @CreditNo integer,in @TipDDS integer,in @ServiceNo integer,in @Discount double,in @RegDate date) // Tazi procedura se izpolzva za popylwane vuv wremennata tablica #Articles // na opredelen red ot ServiceCredits begin declare @MaxQty integer; declare @MinQty integer; declare @ArticlePrWithDDS double; //nt declare @NameToInsert varchar(100); declare @RoomName varchar(40); --message 'tuk sme pri FillServicesForBill @RegDate=' || @RegDate type info to console; if @Qty < 0 then set @MaxQty=0; set @MinQty=@Qty else set @MaxQty=@Qty; set @MinQty=0 end if; set @ArticlePrWithDDS=@ArticlePrice; //nt --message 'Cenata s dds - >'+cast(@ArticlePrWithDDS as varchar) type info to console; if @TipDDS = 1 then set @ArticlePrice=@ArticlePrice/(bvrDDSPart+1); set @TipDDS=2 end if; // vzima alternativno ime ako e zadadeno set @NameToInsert=isNull((select Stoinost from SvoServiceCreditsStn where Glava = @CreditNo and Svoistvo = 1),''); if @NameToInsert = '' then set @NameToInsert=@ArticleName end if; insert into #Articles( ArticleNumber,ArticleName,Measure,ArticleQty,MaxQty,MinQty,ArticlePrice,Discount,RegNo, CreditNo,ArticleSum,TipDDS,ServiceNo,PriceInvWithDDS,ArticleSumWithDDS,RegDate) values( @ArticleNumber,@NameToInsert,'бр.',@Qty,@MaxQty,@MinQty,@ArticlePrice,@Discount,0, //nt // CreditNo,ArticleSum,TipDDS,ServiceNo) values(@ArticleNumber,@NameToInsert,'бр.',@Qty,@MaxQty,@MinQty,@ArticlePrice,0,0, @CreditNo,((@ArticlePrice*@Qty)-((@ArticlePrice*@Qty)*@Discount)/100),@TipDDS,@ServiceNo,@ArticlePrWithDDS, ((@ArticlePrWithDDS*@Qty)-((@ArticlePrWithDDS*@Qty)*@Discount)/100),@RegDate) end //[v 18.02.2003] //[v 19.12.2008] Nixon - MON - dobaveno da pokazva alternativno ime ako e zadadeno --[v 18.07.2009] Yoan - @NameToInsert napraveno 100 simvola GO IF (EXISTS(Select * from sys.sysprocedure where LCase(proc_name) = LCase('ArticlesByVidSmetka'))) THEN Drop procedure ArticlesByVidSmetka END IF GO create procedure DBA.ArticlesByVidSmetka(in @VidSmetka integer,in @ExchangeRate double) // Ako se smeni vida na smetkata tazi procedura zapisva korektnite stojnosti // i promenia imeto, ako e vuvedeno begin declare @NewName varchar(200); declare @Lang integer; message 'ArticlesByVidSmetka 1' type info to console; select Language into @Lang from VidSmetki where n = @VidSmetka; for f as curs scroll cursor for select ArticleNumber as @ArticleNumber,ArticlePrice as @ArticlePrice,ArticleName as @ArticleName, ArticleSum as @ArticleSum,ServiceNo as @ServiceNo from #Articles do set @NewName=null; if((@Lang = 1) and(locate(@ArticleName,'Нощувка') > 0) and(locate(@ArticleName,'от') > 0) and (locate(@ArticleName,'до') > 0)) then if(locate(@ArticleName,'стая') > 0) then set @NewName='Lodging in room ' || substr(@ArticleName,locate(@ArticleName,'стая')+5,locate(@ArticleName,' ',locate(@ArticleName,'стая')+5)-locate(@ArticleName,'стая')-5) || ' from ' || substr(@ArticleName,locate(@ArticleName,'от')+3,locate(@ArticleName,' ',locate(@ArticleName,'от')+3)-locate(@ArticleName,'от')-3) || ' to ' || substr(@ArticleName,locate(@ArticleName,'до')+3,20) end if; if(locate(@ArticleName,'апартамент') > 0) then set @NewName='Lodging in room ' || substr(@ArticleName,locate(@ArticleName,'апартамент')+11,locate(@ArticleName,' ',locate(@ArticleName,'апартамент')+11)-locate(@ArticleName,'апартамент')-11) || ' from ' || substr(@ArticleName,locate(@ArticleName,'от')+3,locate(@ArticleName,' ',locate(@ArticleName,'от')+3)-locate(@ArticleName,'от')-3) || ' to ' || substr(@ArticleName,locate(@ArticleName,'до')+3,20) end if else if @Lang = 0 then set @NewName=@ArticleName else select SS.Stoinost into @NewName from VidSmetki as VS,SvoServicesStn as SS where VS.N = @VidSmetka and VS.SvoService = SS.Svoistvo and SS.Glava = @ServiceNo end if end if; if(@NewName is null) then set @NewName=@ArticleName end if; message 'ArticlesByVidSmetka step 1 @NewName=' || @NewName || ' @VidSmetka=' || @VidSmetka type info to console; if @Lang is null then set @Lang=0 end if; message 'ArticlesByVidSmetka @Lang=' || @Lang type info to console; update #Articles set TranslateName = @NewName,PriceInvCurrency = @ArticlePrice/@ExchangeRate, ArticleSumInvCurrency = @ArticleSum/@ExchangeRate where ArticleNumber = @ArticleNumber end for // update #Articles set PriceInvCurrency=@ArticlePrice/@ExchangeRate, // ArticleSumInvCurrency=@ArticleSum/@ExchangeRate where ArticleNumber=@ArticleNumber end for end //[v. 28.02.2003 ] Jorko //[v.2 19.Nov.2007] - Maria GO Delete from Relations where lcase(RelationTable) = lcase('Dayly list for period') Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','__Options__','Дневен лист за период','__Options__','Dayly list for period','__Options__',1,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'__Options__','','',0,0,0,0,'Printer.Orientation=1','',80,'',0,0,0,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','bvrData1','Дневен лист за период','От дата','Dayly list for period','From Date',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'bvrData1','','',0,0,1,1,'','select bvrData1',72,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','bvrData2','Дневен лист за период','До дата','Dayly list for period','From Date',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'bvrData2','','',0,0,1,1,'','select bvrData1',72,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','GuestNum','Дневен лист за период','Студент №','Dayly list for period','GuestNum',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Студент №','','',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Name','Дневен лист за период','Име','Dayly list for period','Name',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Име','','',0,0,'','','','',200,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','ArriveDate','Дневен лист за период','Дата прист.','Dayly list for period','ArriveDate',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'ArriveDate','','',0,1,'','','','',80,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','LeaveDate','Дневен лист за период','Дата замин.','Dayly list for period','LeaveDate',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'LeaveDate','','',0,0,'','','','',80,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','LastRoomName','Дневен лист за период','Стая','Dayly list for period','LastRoom',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'LastRoom','','',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','NumNights','Дневен лист за период','Нощувки','Dayly list for period','NumNights',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'NumNights','','',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Price','Дневен лист за период','Цена за месец','Dayly list for period','Price',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Price','','# ### ##0.00',1,0,'','','','',80,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Suma','Дневен лист за период','Платено','Dayly list for period','Suma',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Sum(Suma)','Sum(qrData.Платено)','# ### ##0.00',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Balance','Дневен лист за период','Остатък','Dayly list for period','Balance',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Sum(Balance)','Sum(qrData.Остатък)','# ### ##0.00',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Total','Дневен лист за период','Общо','Dayly list for period','Total',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Sum(Total)','Sum(qrData.Общо)','# ### ##0.00',1,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Passport','Дневен лист за период','Паспорт','Dayly list for period','Passport',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Passport','','',0,0,'','','','',150,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','EGN','Дневен лист за период','ЕГН','Dayly list for period','EGN',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'EGN','','',0,0,'','','','',80,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Country','Дневен лист за период','Държава','Dayly list for period','Country',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Country','','',0,0,'','','select Description from Countries where Active=1','',80,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','AddressData','Дневен лист за период','Местожителство','Dayly list for period','AddressData',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'AddressData','','',0,0,'','','','',150,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','ContractName','Дневен лист за период','Договор','Dayly list for period','ContractName',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'ContractName','','',0,0,'','','select FullName from Contracts where Active=1','',150,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Admin','Дневен лист за период','Потребител','Dayly list for period','Admin',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Admin','','',0,0,'','','','',150,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','UName','Дневен лист за период','Университет','Dayly list for period','UName',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'UName','','',0,0,'','','','',230,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','SName','Дневен лист за период','Специалност','Dayly list for period','SName',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'SName','','',0,0,'','','','',230,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','Kurs','Дневен лист за период','Курс','Dayly list for period','Kurs',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'Kurs','','',0,0,'','','','',60,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_DaylyListForPeriod','FN','Дневен лист за период','Факултетен номер','Dayly list for period','FN',2,GetFreeNInRelations('Dayly list for period', Null, Null, 10),'FN','','',0,0,'','','','',110,'',0,0,1,today()) Go delete from InformPermission where RelationN=( select N from Relations where TableName='v_DaylyListForPeriod'and ColName='__OPTIONS__') Go f1: for f1 as curs scroll cursor for select grNo=N from AdminGroups do if grNo <> 0 then insert into InformPermission(N,RelationN,AdminGroupNo,Stoinost) values((select MAX(N+1) from InformPermission),(select N from Relations where TableName='v_DaylyListForPeriod'and ColName='__OPTIONS__' ),GrNo,1); end if; end for; GO Delete from Relations where lcase(RelationTable) = lcase('Заетост на стаи за период') Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','__OPTIONS__','Заетост на стаи за период','__OPTIONS__','Заетост на стаи за период','__OPTIONS__',1,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'__OPTIONS__','','',0,0,'','','','',1,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','bvrData1','Заетост на стаи за период','От дата','Заетост на стаи за период','bvrData1',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'bvrData1','','',1,0,1,1,'','select bvrdata1',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','bvrData2','Заетост на стаи за период','До дата','Заетост на стаи за период','bvrData2',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'bvrData2','','',1,0,1,1,'','select bvrdata2',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','RoomTypes','Заетост на стаи за период','Типове стаи','Заетост на стаи за период','RoomTypes',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'RoomTypes','','',0,0,'','','','',150,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','BusyNum','Заетост на стаи за период','Заети стаи','Заетост на стаи за период','BusyNum',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'BusyNum','','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','AvailForPeriod','Заетост на стаи за период','Свободни стаи','Заетост на стаи за период','AvailForPeriod',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'AvailForPeriod','','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('//v_BusyRoomsByPeriod','Persent','Заетост на стаи за период','Проц. заетост','Заетост на стаи за период','Persent',2,GetFreeNInRelations('Заетост на стаи за период', Null, Null, 10),'Persent','','0%',0,0,'','','','',100,'',0,0,1,today()) Go delete from InformPermission where RelationN=( select N from Relations where TableName='//v_BusyRoomsByPeriod'and ColName='__OPTIONS__') Go f1: for f1 as curs scroll cursor for select grNo=N from AdminGroups do if grNo <> 0 then insert into InformPermission(N,RelationN,AdminGroupNo,Stoinost) values((select MAX(N+1) from InformPermission),(select N from Relations where TableName='//v_BusyRoomsByPeriod'and ColName='__OPTIONS__' ),GrNo,1); end if; end for; GO Delete from Relations where lcase(RelationTable) = lcase('Free and occupied beds') Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','__OPTIONS__','Свободни и заети стаи','__OPTIONS__','Free and occupied beds','__OPTIONS',1,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'__OPTIONS__','','',0,0,'','','','',1,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','bvrData2','Свободни и заети стаи','Дата','Free and occupied beds','Date',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'bvrData2','','',0,0,1,1,'','select today(*)',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','HotelName','Свободни и заети стаи','Общежитие','Free and occupied beds','HotelName',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'HotelName','','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','Room','Свободни и заети стаи','Стая','Free and occupied beds','Room',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'Room','select RoomName from Rooms','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','RoomClass','Свободни и заети стаи','Категория','Free and occupied beds','RoomClass',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'RoomClass','select ShortName from Classes where Valid=1','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','Status','Свободни и заети стаи','Статус','Free and occupied beds','Status',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'Status','','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','TotalBeds','Свободни и заети стаи','Легла','Free and occupied beds','TotalBeds',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'sum(TotalBeds)','Sum(qrData.Легла)','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','NumPeople','Свободни и заети стаи','Студенти','Free and occupied beds','NumPeople',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'sum(NumPeople)','Sum(qrData.Студенти)','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','FreeBeds','Свободни и заети стаи','Свободни легла','Free and occupied beds','FreeBeds',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'sum(FreeBeds)','Sum(qrData.Свободни легла)','',0,0,'','','','',100,'',0,0,1,today()) Go INSERT INTO Relations(TableName,ColName,BGTableName,BGColName,RelationTable,RelationCol,SelectCol,N,Function,Suma,Mask,Align,Sortirane,Zadaljitelna,Promenliva,FilterList,DftFilter,Shirina,Opisanie,DftLike,AutoStretch,Spravka,PoslData) VALUES('v_FreeBeds','UnUsedBeds','Свободни и заети стаи','Неизползваеми','Free and occupied beds','UnUsedBeds',2,GetFreeNInRelations('Free and occupied beds', Null, Null, 10),'SUM(UnUsedBeds)','Sum(qrData.Неизползваеми)','',0,0,'','','','',80,'',0,0,1,today()) Go delete from InformPermission where RelationN=( select N from Relations where TableName='v_FreeBeds'and ColName='__OPTIONS__') Go f1: for f1 as curs scroll cursor for select grNo=N from AdminGroups do if grNo <> 0 then insert into InformPermission(N,RelationN,AdminGroupNo,Stoinost) values((select MAX(N+1) from InformPermission),(select N from Relations where TableName='v_FreeBeds'and ColName='__OPTIONS__' ),GrNo,1); end if; end for; GO