sync
This commit is contained in:
9
DBG - get all indexes of a tables size.sql
Normal file
9
DBG - get all indexes of a tables size.sql
Normal file
@@ -0,0 +1,9 @@
|
||||
SELECT
|
||||
i.name AS IndexName,
|
||||
SUM(s.used_page_count) * 8 /1024 AS IndexSizeMB
|
||||
FROM sys.dm_db_partition_stats AS s
|
||||
JOIN sys.indexes AS i
|
||||
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
|
||||
WHERE s.[object_id] = object_id('dbo.document_line')
|
||||
GROUP BY i.name
|
||||
ORDER BY i.name
|
||||
136
DBG - index infos.sql
Normal file
136
DBG - index infos.sql
Normal file
@@ -0,0 +1,136 @@
|
||||
;WITH ColInfo
|
||||
AS (SELECT TblName = o.name,
|
||||
SchemaTbl = s.name + '.' + o.name,
|
||||
IndexName = i.name,
|
||||
IsPrimaryKey = [i].[is_primary_key],
|
||||
IsUniqueConstraint = [i].[is_unique_constraint],
|
||||
IsUnique = [i].[is_unique],
|
||||
ColName = c.name,
|
||||
IsComputedCol = [c].[is_computed],
|
||||
IsIncludedCol = [ic].[is_included_column],
|
||||
[ic].[key_ordinal],
|
||||
FilterDefinition = [i].[filter_definition],
|
||||
i.[index_id],
|
||||
crlf = CHAR(13) + CHAR(10),
|
||||
crlfgo = ';' + CHAR(13) + CHAR(10) + 'GO' + CHAR(13) + CHAR(10),
|
||||
[o].[object_id]
|
||||
FROM sys.objects o
|
||||
INNER JOIN sys.schemas s
|
||||
ON o.schema_id = s.schema_id
|
||||
INNER JOIN sys.columns c
|
||||
ON o.object_id = c.object_id
|
||||
INNER JOIN sys.indexes i
|
||||
ON c.object_id = i.object_id
|
||||
INNER JOIN sys.index_columns ic
|
||||
ON i.index_id = ic.index_id
|
||||
AND o.object_id = ic.object_id
|
||||
AND c.column_id = ic.column_id
|
||||
WHERE s.name = 'dbo'
|
||||
AND o.name = 'item_key'
|
||||
--AND i.filter_definition IS NOT NULL
|
||||
)
|
||||
SELECT DISTINCT [x].[TblName],
|
||||
[x].[IndexName],
|
||||
[x].[index_id],
|
||||
[x].[IsPrimaryKey],
|
||||
[x].[IsUniqueConstraint],
|
||||
[x].[IsUnique],
|
||||
--,size.IndexSizeKB
|
||||
[c].[IndexColumns],
|
||||
[ci].[IncludedColumns],
|
||||
[cc].[ComputedColumns],
|
||||
[x].[FilterDefinition],
|
||||
[sz].[IndexSizeMB],
|
||||
[us].[Reads],
|
||||
[us].[Writes],
|
||||
DropCreateSQL = [x].[crlf] + '-- ' + x.IndexName + [x].[crlf] +
|
||||
--check drop
|
||||
'IF INDEXPROPERTY(OBJECT_ID(''' + [x].[SchemaTbl] + '''), ''' + x.IndexName
|
||||
+ ''' , ''IndexID'' ) IS NOT NULL BEGIN;' + [x].[crlf]
|
||||
+ CASE
|
||||
WHEN [x].[IsPrimaryKey] = 1 THEN NULL
|
||||
WHEN [x].[IsUniqueConstraint] = 1 THEN
|
||||
--drop statement
|
||||
' ALTER TABLE ' + [x].[SchemaTbl] + ' DROP CONSTRAINT ' + x.IndexName + ';'
|
||||
+ [x].[crlf] + 'END' + [x].[crlfgo]
|
||||
--check create
|
||||
+ 'IF INDEXPROPERTY(OBJECT_ID(''' + [x].[SchemaTbl] + '''), ''' + x.IndexName
|
||||
+ ''' , ''IndexID'' ) IS NULL BEGIN;' + [x].[crlf] +
|
||||
--create statement
|
||||
+' ALTER TABLE '
|
||||
+ [x].[SchemaTbl] + ' ADD CONSTRAINT ' + x.IndexName + ' UNIQUE ('
|
||||
+ [c].[IndexColumns] + ');' + [x].[crlf] + 'END' + [x].[crlfgo]
|
||||
ELSE
|
||||
--drop statement
|
||||
' DROP INDEX ' + [x].[SchemaTbl] + '.' + x.IndexName + ';' + [x].[crlf]
|
||||
+ 'END' + [x].[crlfgo]
|
||||
--check create
|
||||
+ 'IF INDEXPROPERTY(OBJECT_ID(''' + [x].[SchemaTbl] + '''), ''' + x.IndexName
|
||||
+ ''' , ''IndexID'' ) IS NULL BEGIN;' + [x].[crlf] +
|
||||
--create statement
|
||||
+' CREATE '
|
||||
+ CASE
|
||||
WHEN [x].[IsUnique] = 1 THEN 'UNIQUE '
|
||||
ELSE '' END + 'INDEX ' + x.IndexName + ' ON ' + [x].[SchemaTbl] + '('
|
||||
+ [c].[IndexColumns] + ')'
|
||||
+ ISNULL(' INCLUDE(' + [ci].[IncludedColumns] + ')', '')
|
||||
+ ISNULL(' WHERE ' + [x].[FilterDefinition], '') + ';' + [x].[crlf] + 'END'
|
||||
+ [x].[crlfgo] END
|
||||
FROM ColInfo x
|
||||
OUTER APPLY ( SELECT IndexColumns = STUFF([sq].[strXML], 1, 2, '')
|
||||
FROM ( SELECT ', ' + ISNULL([x2].[ColName], '')
|
||||
FROM ColInfo x2
|
||||
WHERE x.TblName = [x2].[TblName]
|
||||
AND x.IndexName = [x2].[IndexName]
|
||||
AND [x2].[IsIncludedCol] = 0
|
||||
ORDER BY x2.key_ordinal
|
||||
FOR XML PATH('')) sq(strXML) ) c
|
||||
OUTER APPLY ( SELECT IncludedColumns = STUFF([sq].[strXML], 1, 2, '')
|
||||
FROM ( SELECT ', ' + ISNULL([x2].[ColName], '')
|
||||
FROM ColInfo x2
|
||||
WHERE x.TblName = [x2].[TblName]
|
||||
AND x.IndexName = [x2].[IndexName]
|
||||
AND [x2].[IsIncludedCol] = 1
|
||||
ORDER BY x2.key_ordinal
|
||||
FOR XML PATH('')) sq(strXML) ) ci
|
||||
OUTER APPLY ( SELECT ComputedColumns = STUFF([sq].[strXML], 1, 2, '')
|
||||
FROM ( SELECT ', ' + ISNULL([x2].[ColName], '')
|
||||
FROM ColInfo x2
|
||||
WHERE x.TblName = [x2].[TblName]
|
||||
AND x.IndexName = [x2].[IndexName]
|
||||
AND [x2].[IsComputedCol] = 1
|
||||
ORDER BY x2.key_ordinal
|
||||
FOR XML PATH('')) sq(strXML) ) cc
|
||||
OUTER APPLY ( SELECT tblName = o.name,
|
||||
o.type,
|
||||
i.name AS [IndexName],
|
||||
i.index_id,
|
||||
[s].[user_seeks] + [s].[user_scans] + [s].[user_lookups] AS [Reads],
|
||||
[s].[user_updates] AS [Writes],
|
||||
i.type_desc AS [IndexType],
|
||||
[i].[fill_factor] AS [FillFactor],
|
||||
[i].[has_filter],
|
||||
[i].[filter_definition],
|
||||
[s].[last_user_scan],
|
||||
[s].[last_user_lookup],
|
||||
[s].[last_user_seek]
|
||||
FROM sys.dm_db_index_usage_stats AS s WITH (NOLOCK)
|
||||
INNER JOIN sys.indexes AS i WITH (NOLOCK)
|
||||
ON s.object_id = i.object_id
|
||||
INNER JOIN sys.objects o WITH (NOLOCK)
|
||||
ON s.object_id = o.object_id
|
||||
WHERE o.type = 'U' -- user table
|
||||
AND i.index_id = s.index_id
|
||||
AND [s].[database_id] = DB_ID()
|
||||
AND o.name = x.TblName
|
||||
AND i.name = x.IndexName) us
|
||||
OUTER APPLY ( SELECT [i].[name] AS IndexName,
|
||||
SUM([s].[used_page_count]) * 8 / 1024 AS IndexSizeMB
|
||||
FROM sys.dm_db_partition_stats AS s
|
||||
JOIN sys.indexes AS i
|
||||
ON s.[object_id] = i.[object_id]
|
||||
AND s.index_id = i.index_id
|
||||
WHERE s.[object_id] = x.[object_id] --OBJECT_ID('dbo.document_line')
|
||||
AND [i].[name] = x.IndexName
|
||||
GROUP BY [i].[name]) sz
|
||||
ORDER BY [x].[index_id];
|
||||
12
EXPLOIT - suspect database.sql
Normal file
12
EXPLOIT - suspect database.sql
Normal file
@@ -0,0 +1,12 @@
|
||||
--step 1, go in emergency mode
|
||||
ALTER database [ActivePos_write] set SINGLE_USER
|
||||
Alter database [ActivePos_write] SET EMERGENCY
|
||||
|
||||
--step 2, do a checkdb
|
||||
DBCC CHECKDB ('ActivePos_write') WITH NO_INFOMSGS, ALL_ERRORMSGS
|
||||
|
||||
--if no errors reported or index corruption, do a repair with data loss
|
||||
DBCC CHECKDB ('ActivePos_write', REPAIR_ALLOW_DATA_LOSS)
|
||||
|
||||
--set the db back in multi user
|
||||
ALTER database [ActivePos_write] set multi_user
|
||||
Binary file not shown.
@@ -0,0 +1,21 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# SQL Server Management Studio Solution File, Format Version 18.00
|
||||
VisualStudioVersion = 15.0.28307.421
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{4F2E2C19-372F-40D8-9FA7-9D2138C6997A}") = "OCTPDBA-494 - Triafin SSRS report performances", "OCTPDBA-494 - Triafin SSRS report performances\OCTPDBA-494 - Triafin SSRS report performances.ssmssqlproj", "{0C4A7033-F9D6-4FD3-B281-46AF32E3A3AE}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Default|Default = Default|Default
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{0C4A7033-F9D6-4FD3-B281-46AF32E3A3AE}.Default|Default.ActiveCfg = Default
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {376F0692-F108-41FE-AE3C-E5C5A15D65E9}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<SqlWorkbenchSqlProject xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="SqlWorkbenchSqlProject">
|
||||
<Items>
|
||||
<LogicalFolder Name="Connections" Type="2" />
|
||||
<LogicalFolder Name="Queries" Type="0" />
|
||||
<LogicalFolder Name="Miscellaneous" Type="3" />
|
||||
|
||||
</Items>
|
||||
</SqlWorkbenchSqlProject>
|
||||
Binary file not shown.
@@ -0,0 +1,22 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# SQL Server Management Studio Solution File, Format Version 18.00
|
||||
VisualStudioVersion = 15.0.28307.421
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{4F2E2C19-372F-40D8-9FA7-9D2138C6997A}") = "OCTPDBA-565 manage index 23.2", "OCTPDBA-565 manage index 23.2\OCTPDBA-565 manage index 23.2.ssmssqlproj", "{C97024D6-51B8-45F5-AB85-2F078896231D}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Default|Default = Default|Default
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{C97024D6-51B8-45F5-AB85-2F078896231D}.Default|Default.ActiveCfg = Default
|
||||
{4513A253-D07C-4788-BECD-EE9E137E12C6}.Default|Default.ActiveCfg = Default
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {E928451A-DEEA-4C89-9EBD-4E5A6C689ED5}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -0,0 +1,52 @@
|
||||
<?xml version="1.0"?>
|
||||
<SqlWorkbenchSqlProject xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="OCTPDBA-565 manage index 23.2">
|
||||
<Items>
|
||||
<LogicalFolder Name="Connections" Type="2" Sorted="true">
|
||||
<Items>
|
||||
<ConnectionNode Name="(local):CENTRALINFRA\ua208700">
|
||||
<Created>2023-04-21T15:44:01.3213141+02:00</Created>
|
||||
<Type>SQL</Type>
|
||||
<Server>(local)</Server>
|
||||
<UserName />
|
||||
<Authentication>Windows Authentication</Authentication>
|
||||
<InitialDB />
|
||||
<LoginTimeout>30</LoginTimeout>
|
||||
<ExecutionTimeout>0</ExecutionTimeout>
|
||||
<ConnectionProtocol>NotSpecified</ConnectionProtocol>
|
||||
<ApplicationName>Microsoft SQL Server Management Studio - Query</ApplicationName>
|
||||
</ConnectionNode>
|
||||
<ConnectionNode Name="suncent:CENTRALINFRA\ua208700">
|
||||
<Created>2023-04-21T15:15:13.4922177+02:00</Created>
|
||||
<Type>SQL</Type>
|
||||
<Server>suncent</Server>
|
||||
<UserName />
|
||||
<Authentication>Windows Authentication</Authentication>
|
||||
<InitialDB>master</InitialDB>
|
||||
<LoginTimeout>30</LoginTimeout>
|
||||
<ExecutionTimeout>0</ExecutionTimeout>
|
||||
<ConnectionProtocol>NotSpecified</ConnectionProtocol>
|
||||
<ApplicationName>Microsoft SQL Server Management Studio - Query</ApplicationName>
|
||||
</ConnectionNode>
|
||||
</Items>
|
||||
</LogicalFolder>
|
||||
<LogicalFolder Name="Queries" Type="0" Sorted="true">
|
||||
<Items>
|
||||
<FileNode Name="centrale.sql">
|
||||
<AssociatedConnectionMoniker>8c91a03d-f9b4-46c0-a305-b5dcc79ff907:(local):True</AssociatedConnectionMoniker>
|
||||
<AssociatedConnSrvName>(local)</AssociatedConnSrvName>
|
||||
<AssociatedConnUserName />
|
||||
<FullPath>centrale.sql</FullPath>
|
||||
</FileNode>
|
||||
<FileNode Name="pharmacies.sql">
|
||||
<AssociatedConnectionMoniker>8c91a03d-f9b4-46c0-a305-b5dcc79ff907:(local):True</AssociatedConnectionMoniker>
|
||||
<AssociatedConnSrvName>(local)</AssociatedConnSrvName>
|
||||
<AssociatedConnUserName />
|
||||
<FullPath>pharmacies.sql</FullPath>
|
||||
</FileNode>
|
||||
</Items>
|
||||
</LogicalFolder>
|
||||
<LogicalFolder Name="Miscellaneous" Type="3" Sorted="true">
|
||||
<Items />
|
||||
</LogicalFolder>
|
||||
</Items>
|
||||
</SqlWorkbenchSqlProject>
|
||||
@@ -0,0 +1,175 @@
|
||||
/*=============================================================================
|
||||
|
||||
OCTPDBA-565
|
||||
Manage indexes followig 23.2 release branch
|
||||
|
||||
Parameters
|
||||
----------------------
|
||||
|
||||
|
||||
Context
|
||||
----------------------
|
||||
suncent
|
||||
|
||||
Creation : 21.04.2023 / TSC
|
||||
Modifications:
|
||||
|
||||
=============================================================================*/
|
||||
USE arizona
|
||||
|
||||
DECLARE @business VARCHAR(20);
|
||||
SELECT @business = [Business]
|
||||
FROM [master].[cfg].[InstanceContext];
|
||||
|
||||
--BEGIN TRANSACTION
|
||||
SET XACT_ABORT ON;
|
||||
SET NOCOUNT ON;
|
||||
|
||||
|
||||
IF @business= 'TPCENT'
|
||||
BEGIN
|
||||
/* Item_criteria. drop XIF1041Item_criteria (ITCR_criteria)*/
|
||||
IF EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'XIF1041Item_criteria'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_criteria')
|
||||
)BEGIN
|
||||
EXEC('use arizona; DROP INDEX dbo.Item_criteria.XIF1041Item_criteria;')
|
||||
PRINT 'drop XIF1041Item_criteria'
|
||||
END
|
||||
|
||||
/* Item_criteria. replace XIF1039Item_criteria with NCIX_Item_criteria_COL_ITCR_item*/
|
||||
IF EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'XIF1039Item_criteria'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_criteria')
|
||||
)BEGIN
|
||||
EXEC('use arizona; DROP INDEX dbo.Item_criteria.XIF1039Item_criteria;')
|
||||
PRINT 'drop XIF1039Item_criteria'
|
||||
END
|
||||
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Item_criteria_COL_ITCR_item'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_criteria')
|
||||
)BEGIN
|
||||
CREATE NONCLUSTERED INDEX NCIX_Item_criteria_COL_ITCR_item ON [Arizona].[dbo].[Item_criteria]([ITCR_item])
|
||||
INCLUDE([ITCR_criteria]);
|
||||
PRINT 'create NCIX_Item_criteria_COL_ITCR_item'
|
||||
END
|
||||
|
||||
/* Document_line */
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Document_line_COL_DL_to_be_invoiced'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Document_line')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Document_line_COL_DL_to_be_invoiced] ON [Arizona].[dbo].[Document_line] ([DL_type], [DL_to_be_invoiced]) INCLUDE ([DL_document_header]);
|
||||
PRINT 'create NCIX_Document_line_COL_DL_to_be_invoiced'
|
||||
END
|
||||
|
||||
/* Fixed_price. */
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Fixed_price_COL_FP_tariff_type'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Fixed_price')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Fixed_price_COL_FP_tariff_type] ON [Arizona].[dbo].[Fixed_price] ([FP_tariff_type], [FP_price_code],[FP_start_date]) INCLUDE ([Fixed_price_ID], [FP_item], [FP_end_date], [FP_tax_incl_price_per_unit], [FP_quantity]);
|
||||
PRINT 'create NCIX_Fixed_price_COL_FP_tariff_type'
|
||||
END
|
||||
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Fixed_price_COL_FP_tariff_type_FP_start_date'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Fixed_price')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Fixed_price_COL_FP_tariff_type_FP_start_date] ON [Arizona].[dbo].[Fixed_price] ([FP_tariff_type],[FP_start_date]) INCLUDE ([Fixed_price_ID], [FP_item], [FP_price_code], [FP_end_date], [FP_tax_incl_price_per_unit], [FP_quantity]);
|
||||
PRINT 'create xxx'
|
||||
END
|
||||
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Fixed_price_COL_FP_price_code'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Fixed_price')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Fixed_price_COL_FP_price_code] ON [Arizona].[dbo].[Fixed_price] ([FP_price_code],[FP_start_date]) INCLUDE ([Fixed_price_ID], [FP_item], [FP_end_date], [FP_tax_incl_price_per_unit]);
|
||||
PRINT 'create NCIX_Fixed_price_COL_FP_price_code'
|
||||
END
|
||||
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Fixed_price_COL_FP_subsidiary'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Fixed_price')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Fixed_price_COL_FP_subsidiary] ON [Arizona].[dbo].[Fixed_price] ([FP_subsidiary], [FP_end_date]) INCLUDE ([Fixed_price_ID], [FP_tariff_type], [FP_item], [FP_address], [FP_currency], [FP_price_code], [FP_start_date])
|
||||
PRINT 'create xxx'
|
||||
END
|
||||
|
||||
|
||||
/* item_key */
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Item_key_COL_ITK_subsidiary'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_key')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Item_key_COL_ITK_subsidiary] ON [Arizona].[dbo].[Item_key] ([ITK_subsidiary], [ITK_type]) INCLUDE ([ITK_item], [ITK_key]);
|
||||
PRINT 'create NCIX_Item_key_COL_ITK_subsidiary'
|
||||
END
|
||||
|
||||
/*Item_statistics_yearly. heap table with no indexes*/
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Item_statistics_yearly_COL_ITSTAY_item'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_statistics_yearly')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Item_statistics_yearly_COL_ITSTAY_item] ON [Arizona].[dbo].[Item_statistics_yearly] ([ITSTAY_item], [ITSTAY_inventory_type], [ITSTAY_organizational_unit], [ITSTAY_year]) INCLUDE ([Item_statistics_yearly_id]);
|
||||
PRINT 'create NCIX_Item_statistics_yearly_COL_ITSTAY_item'
|
||||
END
|
||||
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Item_statistics_yearly_COL_ITSTAY_year'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_statistics_yearly')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Item_statistics_yearly_COL_ITSTAY_year] ON [Arizona].[dbo].[Item_statistics_yearly] ([ITSTAY_year]) INCLUDE ([ITSTAY_item], [ITSTAY_inventory_type], [ITSTAY_organizational_unit]);
|
||||
PRINT 'create NCIX_Item_statistics_yearly_COL_ITSTAY_year'
|
||||
END
|
||||
|
||||
|
||||
/*Item_status_history.*/
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [Arizona].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_Item_status_history_COL_ITSH_value_date'
|
||||
AND [x].[object_id] = OBJECT_ID('arizona.dbo.Item_status_history')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_Item_status_history_COL_ITSH_value_date] ON [Arizona].[dbo].[Item_status_history] ([ITSH_value_date]) INCLUDE ([ITSH_item], [ITSH_item_context_status]);
|
||||
PRINT 'create NCIX_Item_status_history_COL_ITSH_value_date'
|
||||
END
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
IF NOT EXISTS(
|
||||
SELECT [x].[index_id]
|
||||
FROM [PharmIndexTP].[sys].[indexes] x
|
||||
WHERE [x].[name] = 'NCIX_mapping_PHGD_CompendiumText_COL_PHGD_CPDTXT_GUID'
|
||||
AND [x].[object_id] = OBJECT_ID('PharmIndexTP.dbo.mapping_PHGD_CompendiumText')
|
||||
)BEGIN
|
||||
CREATE INDEX [NCIX_mapping_PHGD_CompendiumText_COL_PHGD_CPDTXT_GUID] ON [PharmIndexTP].[dbo].[mapping_PHGD_CompendiumText] ([PHGD_CPDTXT_GUID])
|
||||
INCLUDE ([PHGD_CPDTXT_key], [PHGD_CPDTXT_language], [PHGD_CPDTXT_sequence], [PHGD_CPDTXT_text], [PHGD_CPDTXT_status]);
|
||||
PRINT 'create NCIX_mapping_PHGD_CompendiumText_COL_PHGD_CPDTXT_GUID'
|
||||
END
|
||||
|
||||
END
|
||||
|
||||
--ROLLBACK TRANSACTION
|
||||
@@ -0,0 +1,232 @@
|
||||
/*
|
||||
|
||||
octpdba-497 () have removed openrowset to amavitaLiveAPS, everything is centralised now.
|
||||
Each procs that have been altered exists with a copy with the suffix "octpdba-497" (typo in some, where the suffix is ctpdba-497).
|
||||
The copy with the suffix holds the old code.
|
||||
|
||||
|
||||
usage of openrowset on suncent
|
||||
Object name Schema Database Type
|
||||
ABD_Cent_Load dbo ArizonaCUST Procedures
|
||||
ABD_Cent_Load_CTPDBA-497 dbo ArizonaCUST Procedures
|
||||
ACC_Cent_Load dbo ArizonaCUST Procedures
|
||||
ACC_Cent_Load_CTPDBA-497 dbo ArizonaCUST Procedures
|
||||
AP_Cent_Load dbo ArizonaCUST Procedures
|
||||
AP_Cent_Load_OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
APR_Cent_Load dbo ArizonaCUST Procedures
|
||||
aps_Central_Annual_Inventory_Load dbo ArizonaCUST Procedures
|
||||
aps_GAL_olpFACT_controle_PHA dbo ArizonaCUST Procedures
|
||||
aps_SUN_Cession_Creances dbo ArizonaCUST Procedures
|
||||
aps_SUN_Get_Balanced_Scorecard_Data_From_Central dbo ArizonaCUST Procedures
|
||||
AS_Cent_Load dbo ArizonaCUST Procedures
|
||||
AS_Cent_Load__OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
AT_Cent_Aggregated_Data_Load dbo ArizonaCUST Procedures
|
||||
AT_Cent_Aggregated_Data_Load_OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
AT_Cent_Extract_specific_pd_codes dbo ArizonaCUST Procedures
|
||||
AT_Cent_Load dbo ArizonaCUST Procedures
|
||||
CRMCRD_Cent_Load dbo ArizonaCUST Procedures
|
||||
CRMCRD_Cent_Load_OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
CRSH_Cent_Load dbo ArizonaCUST Procedures
|
||||
CRSO_Cent_Load dbo ArizonaCUST Procedures
|
||||
CRSO_Cent_Load_OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
DHICI_Cent_Load dbo ArizonaCUST Procedures
|
||||
DHICI_Cent_Load_OCTPDBA-497 dbo ArizonaCUST Procedures
|
||||
FM_Cent_Load dbo ArizonaCUST Procedures
|
||||
ITSC_Cent_Load dbo ArizonaCUST Procedures
|
||||
SSRS_CR_Sales_Select_For_CR_Operation dbo ArizonaCUST Procedures
|
||||
SSRS_Galenicare_Invoice_Payment_List dbo ArizonaCUST Procedures
|
||||
|
||||
stuff that stinks:
|
||||
ABD_Cent_Load
|
||||
user sqlSyncAccountingExtractionUsr with it's password in the proc
|
||||
|
||||
ACC_Cent_Load
|
||||
seems that SA passwords are in there.
|
||||
not the actual SA passwords, might be old code that was not adapted
|
||||
|
||||
AP_Cent_Load
|
||||
user sqlSyncAccountingExtractionUsr with it's password in the proc
|
||||
|
||||
AT_Cent_Load
|
||||
Still have a link to AMAVITALIVEAPS
|
||||
|
||||
|
||||
|
||||
reports:
|
||||
FidelityCardSales
|
||||
Rapport KO. Son lancement remonte le message suivant
|
||||
An error has occurred during report processing. (rsProcessingAborted)
|
||||
Query execution failed for dataset 'DSMain'. (rsErrorExecutingCommand)
|
||||
Could not find stored procedure 'Extraction_Galenicare_Sales_Fidelity_Card'.
|
||||
|
||||
Lors de la sélection de la "company", lance une query sur Gaia qui retourne toutes les OU de tous les formats ainsi que les "cost centers"
|
||||
---------------------------
|
||||
with Pharmacy ([Company], [Code], [Code_name]) as
|
||||
(
|
||||
select coalesce(asub.Code, OU_subsidiary_prefix)
|
||||
, OU_code
|
||||
, OU_code + ' ' + OU_short_name
|
||||
from [crs].[vwOrganizationalUnit] ou with (nolock)
|
||||
inner join phar.address_criteria adcr with (nolock)
|
||||
on ou.OU_pharmacy_code = adcr.ADCR_pharmacy_code
|
||||
and ou.OU_address = adcr.ADCR_address
|
||||
inner join phar.criteria cr with (nolock)
|
||||
on adcr.ADCR_criteria = cr.Criteria_ID
|
||||
and adcr.ADCR_pharmacy_code = cr.CR_pharmacy_code
|
||||
inner join [phar].[Criteria_type] crt with (nolock)
|
||||
on cr.CR_criteria_type = crt.Criteria_type_ID
|
||||
and cr.CR_pharmacy_code = crt.CRT_pharmacy_code
|
||||
left join crs.AdditionalSubsidiaryLink asl with (nolock)
|
||||
on ou.Reference_Organizational_unit_ID = asl.OrganizationalUnitId
|
||||
left join crs.AdditionalSubsidiary asub with (nolock)
|
||||
on asl.AdditionalSubsidiaryId = asub.AdditionalSubsidiaryId
|
||||
where crt.CRT_type = 1 and crt.crt_code = 'ENV'
|
||||
and ou.OU_subsidiary_prefix is not null
|
||||
)
|
||||
select 1 as Position, [Company], null as [Code], '<All>' as [Code_name]
|
||||
from [Pharmacy]
|
||||
union
|
||||
select 2 as Position, [Company], [Code], [Code_name]
|
||||
from Pharmacy
|
||||
order by Position, Company, Code
|
||||
|
||||
|
||||
with CostCenter([Code], [Company])
|
||||
as
|
||||
(SELECT pcck.PCCK_key AS [Code],
|
||||
coalesce(asub.Code, ou.OU_subsidiary_prefix) AS [Company]
|
||||
from crs.vwOrganizationalUnit ou with (nolock)
|
||||
left join crs.AdditionalSubsidiaryLink asl with (nolock)
|
||||
on ou.Reference_Organizational_unit_ID = asl.OrganizationalUnitId
|
||||
left join crs.AdditionalSubsidiary asub with (nolock)
|
||||
on asl.AdditionalSubsidiaryId = asub.AdditionalSubsidiaryId
|
||||
inner join phar.Profit_cost_center_key pcck with (nolock)
|
||||
on pcck.PCCK_profit_cost_center = ou.OU_profit_cost_center
|
||||
and pcck.PCCK_pharmacy_code = ou.OU_pharmacy_code
|
||||
inner join phar.Fiscal_year fy with (nolock)
|
||||
on fy.Fiscal_year_ID = pcck.PCCK_fiscal_year
|
||||
and fy.FY_pharmacy_code = pcck.PCCK_pharmacy_code
|
||||
and fy.FY_subsidiary = ou.OU_subsidiary
|
||||
and fy.FY_number = 2022
|
||||
and pcck.PCCK_type = Case When coalesce(asub.Code, ou.OU_subsidiary_prefix) in ('CVI', 'SUN') Then 3
|
||||
Else 1 End
|
||||
where ou.OU_centrale_code = 'G')
|
||||
SELECT 1 as Position, null as [Code], '<All>' as [Code_name], null as [Company] from CostCenter
|
||||
union
|
||||
SELECT 2 as Position, null as [Code], '<All>' as [Code_name], [Company] from CostCenter
|
||||
union
|
||||
SELECT 3 as Position, [Code], [Code] as [Code_name], [Company] from CostCenter
|
||||
order by Position, Company, Code
|
||||
---------------------------
|
||||
|
||||
LifeStageInvoices
|
||||
l'ouverture rdu rapport lance 2 query. la 1ere liste les "cost centeers" comme dans le rapport précédent
|
||||
Démarre la query suivante en environ 38 secondes:
|
||||
----------------
|
||||
exec sp_executesql N'SELECT dh.DH_doc_number AS InvoiceNumber,
|
||||
dh.DH_value_date AS InvoiceDate,
|
||||
et.ET_debit_base_amount AS InvoiceAmount,
|
||||
dh.DH_sold_to_text AS CustomerName,
|
||||
coalesce(et.ET_debit_base_amount, 0) - coalesce(SUM(etr.ETR_base_amount), 0) AS DueAmount,
|
||||
dh.DH_invoice_group AS LifeStageNumber,
|
||||
ins.PHIN_name_german AS [Debtor]
|
||||
FROM [Gaia].[phar].[Document_header] dh WITH (nolock)
|
||||
INNER JOIN phar.Entry et WITH (nolock)
|
||||
ON dh.document_header_id = et.ET_document_header
|
||||
AND dh.dh_account = et.Et_account
|
||||
AND dh.DH_pharmacy_code = et.ET_pharmacy_code
|
||||
LEFT JOIN phar.Entry_reconciliation etr WITH (nolock)
|
||||
ON et.Entry_ID = etr.ETR_entry
|
||||
AND et.ET_pharmacy_code = etr.ETR_pharmacy_code
|
||||
left join phar.PH_insurance as ins with (nolock)
|
||||
on ins.PHIN_address = dh.DH_send_bill_to
|
||||
and left(ins.PHIN_pharmacy_code, 1) = left(dh.DH_pharmacy_code, 1)
|
||||
WHERE dh.DH_invoice_group IS NOT NULL
|
||||
AND dh.DH_our_ref LIKE ''LifeStage%''
|
||||
AND dh.DH_pharmacy_code = @PharmacyLifeStage
|
||||
GROUP BY dh.DH_doc_number,
|
||||
dh.Document_header_ID,
|
||||
dh.DH_value_date,
|
||||
et.ET_debit_base_amount,
|
||||
dh.DH_sold_to_text,
|
||||
dh.DH_BVR_reference,
|
||||
dh.DH_account,
|
||||
dh.DH_invoice_group,
|
||||
dh.DH_our_ref,
|
||||
et.ET_reconciliation_status,
|
||||
ins.PHIN_name_german
|
||||
HAVING ((@LifeStageInvoiceNumber is not null AND dh.DH_invoice_group like @LifeStageInvoiceNumber + ''%'')
|
||||
OR (@TriaPharmInvoiceNumber is not null AND @LifeStageInvoiceNumber is null AND dh.DH_Doc_number like @TriaPharmInvoiceNumber + ''%'')
|
||||
OR (@LifeStageInvoiceNumber is null AND @TriaPharmInvoiceNumber is null AND dh.DH_value_date between @InvoiceDateFrom AND isnull(@InvoiceDateTo, cast(getDate() as date))
|
||||
AND (@OpenedInvoice = 0 OR isnull(et.ET_reconciliation_status, 1) = 1)));',N'@InvoiceDateFrom datetime,@InvoiceDateTo nvarchar(4000),@LifeStageInvoiceNumber nvarchar(4000),@OpenedInvoice bit,@TriaPharmInvoiceNumber nvarchar(4000),@PharmacyLifeStage nvarchar(6)',@InvoiceDateFrom='2022-01-01 00:00:00',@InvoiceDateTo=NULL,@LifeStageInvoiceNumber=NULL,@OpenedInvoice=1,@TriaPharmInvoiceNumber=NULL,@PharmacyLifeStage=N'GAM316'
|
||||
----------------
|
||||
|
||||
OpenInvoiceDetails:
|
||||
nécessite un "master id", l'entrée de data bidon remonte la query suivante lancée:
|
||||
-------------------
|
||||
(@InvoiceDateFrom datetime,@InvoiceDateTo nvarchar(4000),@LifeStageInvoiceNumber nvarchar(4000),@OpenedInvoice bit,@TriaPharmInvoiceNumber nvarchar(4000),@PharmacyLifeStage nvarchar(6))SELECT dh.DH_doc_number AS InvoiceNumber,
|
||||
dh.DH_value_date AS InvoiceDate,
|
||||
et.ET_debit_base_amount AS InvoiceAmount,
|
||||
dh.DH_sold_to_text AS CustomerName,
|
||||
coalesce(et.ET_debit_base_amount, 0) - coalesce(SUM(etr.ETR_base_amount), 0) AS DueAmount,
|
||||
dh.DH_invoice_group AS LifeStageNumber,
|
||||
ins.PHIN_name_german AS [Debtor]
|
||||
FROM [Gaia].[phar].[Document_header] dh WITH (nolock)
|
||||
INNER JOIN phar.Entry et WITH (nolock)
|
||||
ON dh.document_header_id = et.ET_document_header
|
||||
AND dh.dh_account = et.Et_account
|
||||
AND dh.DH_pharmacy_code = et.ET_pharmacy_code
|
||||
LEFT JOIN phar.Entry_reconciliation etr WITH (nolock)
|
||||
ON et.Entry_ID = etr.ETR_entry
|
||||
AND et.ET_pharmacy_code = etr.ETR_pharmacy_code
|
||||
left join phar.PH_insurance as ins with (nolock)
|
||||
on ins.PHIN_address = dh.DH_send_bill_to
|
||||
and left(ins.PHIN_pharmacy_code, 1) = left(dh.DH_pharmacy_code, 1)
|
||||
WHERE dh.DH_invoice_group IS NOT NULL
|
||||
AND dh.DH_our_ref LIKE 'LifeStage%'
|
||||
AND dh.DH_pharmacy_code = @PharmacyLifeStage
|
||||
GROUP BY dh.DH_doc_number,
|
||||
dh.Document_header_ID,
|
||||
dh.DH_value_date,
|
||||
et.ET_debit_base_amount,
|
||||
dh.DH_sold_to_text,
|
||||
dh.DH_BVR_reference,
|
||||
dh.DH_account,
|
||||
dh.DH_invoice_group,
|
||||
dh.DH_our_ref,
|
||||
et.ET_reconciliation_status,
|
||||
ins.PHIN_name_german
|
||||
HAVING ((@LifeStageInvoiceNumber is not null AND dh.DH_invoice_group like @LifeStageInvoiceNumber + '%')
|
||||
OR (@TriaPharmInvoiceNumber is not null AND @LifeStageInvoiceNumber is null AND dh.DH_Doc_number like @TriaPharmInvoiceNumber + '%')
|
||||
OR (@LifeStageInvoiceNumber is null AND @TriaPharmInvoiceNumber is null AND dh.DH_value_date between @InvoiceDateFrom AND isnull(@InvoiceDateTo, cast(getDate() as date))
|
||||
AND (@OpenedInvoice = 0 OR isnull(et.ET_reconciliation_status, 1) = 1)));
|
||||
-------------------
|
||||
|
||||
OpenInvoice:
|
||||
lance une query en entrant sur le rapport pour lister les formats et les OU.
|
||||
-----------------
|
||||
select ou.Organizational_unit_ID [Reference_Organizational_unit_ID],
|
||||
case when charindex(ou.OU_code,ou.OU_short_name) > 0 then ou.OU_short_name else ou.OU_short_name + ' ' + ou.OU_code end [Name]
|
||||
from phar.Organizational_unit as ou
|
||||
join [crs].[vwSubsidiary] as sub
|
||||
on sub.Reference_Subsidiary_ID = ou.OU_subsidiary
|
||||
join phar.PH_organizational_unit as phou
|
||||
on phou.PHOU_organizational_unit = ou.Organizational_unit_ID
|
||||
and phou.PHOU_pharmacy_code = ou.OU_pharmacy_code
|
||||
left join phar.Organizational_unit ou2
|
||||
on ou2.OU_master_ID = ou.Organizational_unit_ID and ou2.OU_pharmacy_code = 'A00000'
|
||||
where ou.OU_pharmacy_code = 'G00000'
|
||||
and ou.OU_subsidiary = 1
|
||||
order by ou.OU_subsidiary, ou.OU_short_name
|
||||
|
||||
select sub.Reference_Subsidiary_ID,
|
||||
sub.SUB_prefix
|
||||
from crs.vwSubsidiary sub with (nolock)
|
||||
-----------------
|
||||
|
||||
Le lancement du report lance la proc reportOpenInvoice qui mouline bien sur Gaia
|
||||
-----------------
|
||||
exec crs.ReportOpenInvoices @Format=N'1',@Pharmacy=N'185;157;249;339;366;205;142;308;186;354;285;296;148;298;341;284;322;290;169;144;349;173;163;133;348;342;146;261;124;174;248;137;260;202;117;156;194;254;207;287;334;247;227;153;552;345;663;306;128;130;129;327;131;844;843;300;189;295;338;333;217;110;161;198;329;111;109;270;210;330;103;343;854;224;340;336;272;145;328;166;346;136;859;122;134;135;125;314;118;307;123;760;292;164;120;301;291;195;282;721;571;132;317;114;113;112;115;119;305;302;570;319;544;140;323;373;320;138;139;303;344;318;147;274;310;358;357;359;574;575;873;321;311;175;360;388;331;216;560;143;126;559;299;121;781;335;304',@InvoiceNumber=NULL,@NegativeAmount=0
|
||||
-----------------
|
||||
|
||||
*/
|
||||
@@ -0,0 +1,70 @@
|
||||
/*=============================================================================
|
||||
|
||||
OCTPDBA-565
|
||||
Manage indexes followig 23.2 release branch
|
||||
|
||||
Parameters
|
||||
----------------------
|
||||
|
||||
|
||||
Context
|
||||
----------------------
|
||||
Every pharmacies
|
||||
|
||||
Creation : 21.04.2023 / TSC
|
||||
Modifications:
|
||||
|
||||
=============================================================================*/
|
||||
USE [Arizona]
|
||||
GO
|
||||
|
||||
/*
|
||||
Item_criteria
|
||||
drop old constraints. 2 can be merged and 1 is not used
|
||||
|
||||
XIEAPS2Item_criteria = dbo.Item_criteria(ITCR_master_ID) ==> to drop, not used
|
||||
XIF1039Item_criteria = dbo.Item_criteria(ITCR_item) ==> becomes an include on the index on ITCR_criteria
|
||||
XIF1041Item_criteria = dbo.Item_criteria(ITCR_criteria)
|
||||
*/
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Item_criteria'), 'XIEAPS2Item_criteria' , 'IndexID' ) IS NOT NULL BEGIN;
|
||||
DROP INDEX dbo.Item_criteria.XIEAPS2Item_criteria;
|
||||
END;
|
||||
GO
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Item_criteria'), 'XIF1039Item_criteria' , 'IndexID' ) IS NOT NULL BEGIN;
|
||||
DROP INDEX dbo.Item_criteria.XIF1039Item_criteria;
|
||||
END;
|
||||
GO
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Item_criteria'), 'XIF1041Item_criteria' , 'IndexID' ) IS NOT NULL BEGIN;
|
||||
DROP INDEX dbo.Item_criteria.XIF1041Item_criteria;
|
||||
END;
|
||||
GO
|
||||
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Item_criteria'), 'NCIX_Item_criteria_COL_ITCR_criteria' , 'IndexID' ) IS NULL BEGIN;
|
||||
CREATE NONCLUSTERED INDEX NCIX_Item_criteria_COL_ITCR_criteria ON dbo.Item_criteria(ITCR_criteria)
|
||||
INCLUDE(ITCR_item);
|
||||
END;
|
||||
GO
|
||||
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
||||
/*
|
||||
Document_line
|
||||
|
||||
the index NCIX_Document_line_COL_DL_type is not used.
|
||||
Adapt it to follow the recommendation
|
||||
*/
|
||||
|
||||
-- NCIX_Document_line_COL_DL_type
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Document_line'), 'NCIX_Document_line_COL_DL_type' , 'IndexID' ) IS NOT NULL BEGIN;
|
||||
DROP INDEX [dbo].[Document_line].[NCIX_Document_line_COL_DL_type];
|
||||
END;
|
||||
GO
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Document_line'), 'NCIX_Document_line_COL_DL_type' , 'IndexID' ) IS NULL BEGIN;
|
||||
CREATE INDEX [NCIX_Document_line_COL_DL_type] ON [dbo].[Document_line]([DL_type], [DL_to_be_invoiced])
|
||||
INCLUDE([DL_document_header]);
|
||||
END;
|
||||
GO
|
||||
@@ -0,0 +1,89 @@
|
||||
/*=============================================================================
|
||||
|
||||
What does it does ?
|
||||
|
||||
Parameters
|
||||
----------------------
|
||||
|
||||
|
||||
Context
|
||||
----------------------
|
||||
What is the context, where does it needs to run ?
|
||||
|
||||
Creation : 25.04.2023 / TSC
|
||||
Modifications:
|
||||
|
||||
=============================================================================*/
|
||||
SET XACT_ABORT ON;
|
||||
SET NOCOUNT ON;
|
||||
|
||||
USE [Arizona]
|
||||
|
||||
-- XIF1039Item_criteria
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_criteria'), 'XIF1039Item_criteria' , 'IndexID' ) IS NULL BEGIN;
|
||||
CREATE INDEX XIF1039Item_criteria ON arizona.dbo.Item_criteria(ITCR_item);
|
||||
END;
|
||||
GO
|
||||
|
||||
|
||||
-- XIF1041Item_criteria
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_criteria'), 'XIF1041Item_criteria' , 'IndexID' ) IS NULL BEGIN;
|
||||
CREATE INDEX XIF1041Item_criteria ON arizona.dbo.Item_criteria(ITCR_criteria);
|
||||
END;
|
||||
GO
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_criteria'), 'NCIX_Item_criteria_COL_ITCR_item' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Item_criteria.NCIX_Item_criteria_COL_ITCR_item
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.document_line'), 'NCIX_Document_line_COL_DL_to_be_invoiced' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.[Document_line].NCIX_Document_line_COL_DL_to_be_invoiced
|
||||
END
|
||||
|
||||
|
||||
|
||||
/* Fixed_price. */
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Fixed_price'), 'NCIX_Fixed_price_COL_FP_tariff_type' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX [dbo].[Fixed_price].[NCIX_Fixed_price_COL_FP_tariff_type]
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Fixed_price'), 'NCIX_Fixed_price_COL_FP_tariff_type_FP_start_date' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Fixed_price.[NCIX_Fixed_price_COL_FP_tariff_type_FP_start_date]
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Fixed_price'), 'NCIX_Fixed_price_COL_FP_price_code' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Fixed_price.[NCIX_Fixed_price_COL_FP_price_code]
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Fixed_price'), 'NCIX_Fixed_price_COL_FP_subsidiary' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Fixed_price.[NCIX_Fixed_price_COL_FP_subsidiary]
|
||||
END
|
||||
|
||||
|
||||
/* item_key */
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_key'), 'NCIX_Item_key_COL_ITK_subsidiary' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Item_key.[NCIX_Item_key_COL_ITK_subsidiary]
|
||||
END
|
||||
|
||||
/*Item_statistics_yearly. heap table with no indexes*/
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_statistics_yearly'), 'NCIX_Item_statistics_yearly_COL_ITSTAY_item' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Item_statistics_yearly.[NCIX_Item_statistics_yearly_COL_ITSTAY_item]
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_statistics_yearly'), 'NCIX_Item_statistics_yearly_COL_ITSTAY_year' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Item_statistics_yearly.[NCIX_Item_statistics_yearly_COL_ITSTAY_year]
|
||||
END
|
||||
|
||||
|
||||
/*Item_status_history.*/
|
||||
IF INDEXPROPERTY(OBJECT_ID('arizona.dbo.Item_status_history'), 'NCIX_Item_status_history_COL_ITSH_value_date' , 'IndexID' ) IS NOT NULL BEGIN
|
||||
DROP INDEX dbo.Item_status_history.[NCIX_Item_status_history_COL_ITSH_value_date]
|
||||
END
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
||||
USE [PharmIndexTP]
|
||||
IF INDEXPROPERTY(OBJECT_ID('PharmIndexTP.dbo.mapping_PHGD_CompendiumText'), 'NCIX_mapping_PHGD_CompendiumText_COL_PHGD_CPDTXT_GUID' , 'IndexID' ) IS NULL BEGIN
|
||||
DROP INDEX dbo.mapping_PHGD_CompendiumText.[NCIX_mapping_PHGD_CompendiumText_COL_PHGD_CPDTXT_GUID]
|
||||
END
|
||||
|
||||
21
xe_host_app_query.viewsetting
Normal file
21
xe_host_app_query.viewsetting
Normal file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ViewSetting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<columnSettings>
|
||||
<ColumnSetting name="name">
|
||||
<width>160</width>
|
||||
<mergedColumns />
|
||||
</ColumnSetting>
|
||||
<ColumnSetting name="timestamp">
|
||||
<width>160</width>
|
||||
<mergedColumns />
|
||||
</ColumnSetting>
|
||||
<ColumnSetting name="client_app_name">
|
||||
<width>100</width>
|
||||
<mergedColumns />
|
||||
</ColumnSetting>
|
||||
<ColumnSetting name="client_hostname">
|
||||
<width>100</width>
|
||||
<mergedColumns />
|
||||
</ColumnSetting>
|
||||
</columnSettings>
|
||||
</ViewSetting>
|
||||
Reference in New Issue
Block a user