Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 3.56 KB | None | 0 0
  1. use [Crs#issues_20191023_issues#Inventory]
  2.  
  3. declare @schemas table (id int identity (1, 1) primary key, name varchar(100))
  4. insert @schemas
  5. select name from sys.schemas where name like 'Tenant_%' or name like 'Template_%' or name = 'dbo' order by DATALENGTH(name), name
  6.  
  7. delete @schemas where name = 'Tenant_11'
  8.  
  9. declare @name varchar(100) = (select top 1 name from @schemas)
  10.  
  11. while @name is not null
  12. begin
  13.     declare @sql nvarchar(max) = '
  14.  
  15.  
  16. update ' + @name + '.StockAppendixSources
  17. set SourceIdentifier = (
  18.     select top 1 identifier
  19.     from [Crs#issues_20191023_issues#Financial].' + @name + '.SalesOrders
  20.     where id =' + @name + '.StockAppendixSources.SourceId
  21. )
  22. where SourceIdentifier is null and SourceId > 0 and SourceType = ''SalesOrder''
  23.  
  24.  
  25. update ' + @name + '.StockAppendixSources
  26. set SourceIdentifier = (
  27.     select top 1 identifier
  28.     from [Crs#issues_20191023_issues#Financial].' + @name + '.Invoices
  29.     where id =' + @name + '.StockAppendixSources.SourceId
  30. )
  31. where SourceIdentifier is null and SourceId > 0 and SourceType = ''Invoice''
  32.  
  33. update ' + @name + '.StockAppendixSources
  34. set SourceIdentifier = (
  35.     select top 1 identifier
  36.     from [Crs#issues_20191023_issues#Financial].' + @name + '.PurchaseInvoices
  37.     where id =' + @name + '.StockAppendixSources.SourceId
  38. )
  39. where SourceIdentifier is null and SourceId > 0 and SourceType = ''PurchaseInvoice''
  40.  
  41. update ' + @name + '.StockAppendixSources
  42. set SourceIdentifier = (
  43.     select top 1 identifier
  44.     from [Crs#issues_20191023_issues#Financial].' + @name + '.PurchaseDeliveries
  45.     where id =' + @name + '.StockAppendixSources.SourceId
  46. )
  47. where SourceIdentifier is null and SourceId > 0 and SourceType = ''PurchaseDelivery''
  48.  
  49. update ' + @name + '.StockAppendixSources
  50. set SourceIdentifier = (
  51.     select top 1 identifier
  52.     from [Crs#issues_20191023_issues#Financial].' + @name + '.GiftCards
  53.     where id =' + @name + '.StockAppendixSources.SourceId
  54. )
  55. where SourceIdentifier is null and SourceId > 0 and SourceType = ''GiftCard''
  56.  
  57. update ' + @name + '.StockAppendixSources
  58. set SourceIdentifier = (
  59.     select top 1 identifier
  60.     from [Crs#issues_20191023_issues#PoS].' + @name + '.Sales
  61.     where id =' + @name + '.StockAppendixSources.SourceId
  62. )
  63. where SourceIdentifier is null and SourceId > 0 and SourceType = ''PosSale''
  64.  
  65. select '''+@name+''', * from ' + @name + '.StockAppendixSources
  66. where SourceIdentifier is null
  67.     and SourceId > 0
  68.     and
  69.     (
  70.         not SourceType = ''Invoice''
  71.         or
  72.         (
  73.             sourceid in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.Invoices)
  74.             and
  75.             sourceid not in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.Invoices where identifier is null)
  76.         )
  77.     )
  78.     and
  79.     (
  80.         not SourceType = ''PosSale''
  81.         or
  82.         sourceid in (select id from [Crs#issues_20191023_issues#PoS].' + @name + '.Sales)
  83.     )
  84.     and
  85.     (
  86.         not SourceType = ''SalesOrder''
  87.         or
  88.         sourceid in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.SalesOrders)
  89.     )
  90.     and
  91.     (
  92.         not SourceType = ''PurchaseDelivery''
  93.         or
  94.         sourceid in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.PurchaseDeliveries)
  95.     )
  96.     and
  97.     (
  98.         not SourceType = ''PurchaseDelivery''
  99.         or
  100.         sourceid in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.PurchaseDeliveries)
  101.     )
  102.     and
  103.     (
  104.         not SourceType = ''GiftCard''
  105.         or
  106.         sourceid in (select id from [Crs#issues_20191023_issues#Financial].' + @name + '.GiftCards)
  107.     )
  108.  
  109.     '
  110.     print @sql
  111.     exec (@sql)
  112.    
  113.     delete @schemas where name = @name
  114.     set @name = (select top 1 name from @schemas)  
  115.        
  116. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement