Files
Nuvolar/Nuvolar.Module/BusinessObjects/Business/StorageTransactions/PDA/StoragePDAGenerateDataforPrint.sql
T
2017-03-08 11:21:27 +01:00

87 lines
3.4 KiB
Transact-SQL

set nocount on
declare @StoragePDACollectionHeader uniqueidentifier
declare @StoragePDACollectionRows uniqueidentifier
declare @Barcode nvarchar(50)
declare @Barcode2 nvarchar(50)
declare @MasterKey uniqueidentifier
declare @PriceBruttoHUF float
declare @PriceDiscountHUF float
declare @Products uniqueidentifier
declare @ActualDate datetime
declare @ExpirationDate datetime
declare @PricingCodeDescription nvarchar(255)
declare @QTT int
declare @J int
set @StoragePDACollectionHeader='{0}'
set @MasterKey='{1}'
begin tran
delete from PricingProductsBarcodePrint Where MasterKey=@MasterKey
declare CSPDAR cursor local fast_forward for
select Oid,Products,ltrim(rtrim(isnull(Barcode,''))),convert(int,QTT)
from StoragePDACollectionRows
where StoragePDACollectionHeader=@StoragePDACollectionHeader
order by RowIndex
open CSPDAR
fetch next from CSPDAR into @StoragePDACollectionRows,@Products,@Barcode,@QTT
while @@FETCH_STATUS=0
begin
-- Eladási ár meghatározása
set @PriceBruttoHUF=0
if @Barcode=''
begin
select top 1 @Barcode2=Barcode,@PriceBruttoHUF=PriceBruttoHUF,@ActualDate=ActualDate,@ExpirationDate=ExpirationDate,@PricingCodeDescription=PricingCodeDescription
from PricingProductsBarcodeCustomers
where Products=@Products and ActualDate<=getdate() and convert(varchar(10),getdate(),111)<=convert(varchar(10),ExpirationDate,111) and Barcode not like '28%' and len(Barcode)>4
order by IsAction desc,ActualDate desc
end
else
begin
select top 1 @Barcode2=Barcode,@PriceBruttoHUF=PriceBruttoHUF,@ActualDate=ActualDate,@ExpirationDate=ExpirationDate,@PricingCodeDescription=PricingCodeDescription
from PricingProductsBarcodeCustomers
where Barcode=@Barcode and ActualDate<=getdate() and convert(varchar(10),getdate(),111)<=convert(varchar(10),ExpirationDate,111) and Barcode not like '28%' and len(Barcode)>4
order by IsAction desc,ActualDate desc
end
set @PriceDiscountHUF=@PriceBruttoHUF
if substring(@Barcode,1,2)='99'
begin
select top 1 @PriceBruttoHUF=PriceBruttoHUF
from PricingProductsBarcodeCustomers
where Products=@Products and ActualDate<=getdate() and convert(varchar(10),getdate(),111)<=convert(varchar(10),ExpirationDate,111) and Barcode not like '28%' and len(Barcode)>4
and Barcode not like '99%'
order by IsAction desc,ActualDate desc
end
set @J=0
while @J<@QTT
begin
if isnull(@Barcode,'')=''
begin
insert PricingProductsBarcodePrint ( Oid, MasterKey, Products, RowIndex, Barcode, PriceBruttoHUF, PriceDiscountHUF)
select NEWID(),'{1}',t1.Products,t1.RowIndex,@Barcode2,@PriceBruttoHUF,@PriceBruttoHUF
from StoragePDACollectionRows t1
where Oid=@StoragePDACollectionRows
end
else
begin
insert PricingProductsBarcodePrint ( Oid, MasterKey, Products, RowIndex, Barcode, PriceBruttoHUF, PriceDiscountHUF,ActualDate,ExpirationDate,PricingCodeDescription)
select NEWID(),'{1}',t1.Products,t1.RowIndex,@Barcode,@PriceBruttoHUF,@PriceDiscountHUF,@ActualDate,@ExpirationDate,@PricingCodeDescription
from StoragePDACollectionRows t1
where Oid=@StoragePDACollectionRows
end
set @J=@J+1
end
fetch next from CSPDAR into @StoragePDACollectionRows,@Products,@Barcode,@QTT
end
close CSPDAR
deallocate CSPDAR
commit