Added initial code.

This commit is contained in:
eplots 2024-07-03 21:06:41 +02:00
parent b20c62c46e
commit aa8e08afca
27 changed files with 565 additions and 8 deletions

37
mssql/SUP-7719.sql Normal file
View file

@ -0,0 +1,37 @@
/*
Control code that should be run after the year.
This control goes against case SUP-7719.
Probably need to check the dates below before running it.
Save this file for future questions, especially when updating.
*/
USE FAST2;
DECLARE @fomdat VARCHAR(8)
DECLARE @tomdat VARCHAR(8)
DECLARE @uppldat VARCHAR(8)
SET @fomdat = '20220101'
SET @tomdat = '20220401'
SET @uppldat = '20221201'
SELECT DISTINCT *
FROM ((((avr a
INNER JOIN pr p
ON a.avr_avtnr = p.pr_avtnr)
INNER JOIN obj o
ON a.avr_objnr = o.obj_objnr)
INNER JOIN pr pr_hg1
ON a.avr_avtnr = pr_hg1.pr_avtnr)
INNER JOIN pku u
ON p.pr_kundnr = u.pku_kundnr)
INNER JOIN pku pku_hg1
ON pr_hg1.pr_kundnr = pku_hg1.pku_kundnr
INNER JOIN spin s
ON p.pr_avtnr = s.spin_parent_key
WHERE (a.avr_fomdat BETWEEN @fomdat AND @tomdat)
AND ( o.obj_obotyp LIKE 'P%'
OR o.obj_obotyp LIKE 'G%')
AND a.avr_tomdat = 'TV'
AND a.avr_uppldat >= @uppldat

View file

@ -0,0 +1,33 @@
SELECT
OBJ.OBJ_OBJNR AS 'Objektsnr',
PKU.PKU_HNAMN AS 'Hyresgäst',
OBJ.OBJ_GYTA AS 'Yta kvm',
AVR.AVR_NORMALHYRAMAN AS 'Årshyra',
AVR.AVR_FOMDAT AS 'Avtal startdatum',
AVR.AVR_TOMDAT AS 'Avtal t o m',
AVR.AVR_KONTRAKTSLUT AS 'Kontraktslut',
AVR.AVR_AVRFRL AS 'Förlängningstid',
AVR.AVR_UPSTID AS 'Uppsägningstid'
FROM
AVR
INNER JOIN OBJ ON AVR.AVR_OBJNR = OBJ.OBJ_OBJNR
INNER JOIN OBT ON OBJ.OBJ_OBOTYP = OBT.OBT_OBOTYP
AND OBJ.OBJ_OBJTYP = OBT.OBT_OBJTYP
INNER JOIN OBO ON OBJ.OBJ_OBOTYP = OBO.OBO_OBOTYP
INNER JOIN BG ON OBJ.OBJ_BYGNR = BG.BG_BYGNR
AND OBJ.OBJ_FASTNR = BG.BG_FASTNR
INNER JOIN FT ON BG.BG_FASTNR = FT.FT_FASTNR
LEFT OUTER JOIN PKU ON AVR.AVR_KUNDNRINFLYTT = PKU.PKU_KUNDNR
LEFT OUTER JOIN PKU PKU_A ON AVR.AVR_KUNDNRHG2INFLYTT = PKU_A.PKU_KUNDNR
WHERE
(
AVR.AVR_OBJNR > ''
AND (AVR.AVR_OBJNR) IS NOT NULL
)
AND AVR.AVR_KORR = 'N'
AND FT.FT_BESK LIKE 'Niten 11'
AND OBJ.OBJ_OBOTYP LIKE 'L%'
AND PKU.PKU_HNAMN != 'HG AVIDENTIFIERAD'
AND AVR.AVR_TOMDAT = 'TV'
ORDER BY
Objektsnr ASC

View file

@ -0,0 +1,3 @@
SELECT CONVERT(INT, ISNULL(value, value_in_use)) AS config_value
FROM sys.configurations
WHERE name = 'xp_cmdshell' ;

25
mssql/clean_numbers.sql Normal file
View file

@ -0,0 +1,25 @@
/*
Hur man tar bort alla andra tecken förutom siffror i en query.
*/
(
SELECT
(
SELECT
CAST(
CAST(
(
SELECT
SUBSTRING(PKU_TFNOVR, Number, 1)
FROM
master..spt_values
WHERE
Type = 'p'
AND Number <= LEN(PKU_TFNOVR)
AND SUBSTRING(PKU_TFNOVR, Number, 1) LIKE '[0-9]' FOR XML PATH('')
) AS xml
) AS VARCHAR(MAX)
)
)
FROM
PKU
)

20
mssql/datatypes.sql Normal file
View file

@ -0,0 +1,20 @@
SELECT
[Name] = c.[name]
, [Type] =
CASE
WHEN tp.[name] IN ('varchar', 'char', 'varbinary') THEN tp.[name] + '(' + IIF(c.max_length = -1, 'max', CAST(c.max_length AS VARCHAR(25))) + ')'
WHEN tp.[name] IN ('nvarchar','nchar') THEN tp.[name] + '(' + IIF(c.max_length = -1, 'max', CAST(c.max_length / 2 AS VARCHAR(25)))+ ')'
WHEN tp.[name] IN ('decimal', 'numeric') THEN tp.[name] + '(' + CAST(c.[precision] AS VARCHAR(25)) + ', ' + CAST(c.[scale] AS VARCHAR(25)) + ')'
WHEN tp.[name] IN ('datetime2') THEN tp.[name] + '(' + CAST(c.[scale] AS VARCHAR(25)) + ')'
ELSE tp.[name]
END
, [RawType] = tp.[name]
, [MaxLength] = c.max_length
, [Precision] = c.[precision]
, [Scale] = c.scale
, [IsNullable] = c.is_nullable
FROM sys.tables t
JOIN sys.schemas s ON t.schema_id = s.schema_id
JOIN sys.columns c ON t.object_id = c.object_id
JOIN sys.types tp ON c.user_type_id = tp.user_type_id
WHERE s.[name] = 'dbo' AND t.[name] = 'FN'

View file

@ -0,0 +1,22 @@
USE FAST2;
--real_estate:
SELECT ft_fastnr,
COUNT(*)
FROM ft
GROUP BY ft_fastnr
HAVING COUNT(*) > 1
--building:
SELECT bg_bygnr,
COUNT(*)
FROM bg
GROUP BY bg_bygnr
HAVING COUNT(*) > 1
--object:
SELECT obj_objnr,
COUNT(*)
FROM obj
GROUP BY obj_objnr
HAVING COUNT(*) > 1

30
mssql/kopoang.sql Normal file
View file

@ -0,0 +1,30 @@
/*
KÖTID FRÅN BOKÖ TILLS MAN SKRIVIT AVTAL. EJ INFLYTTNING!
VILKEN SORTERING/GRUPPERING SKALL DET VARA?
VILKA PARAMETRAR SKALL SÄTTAS UPP?
VEM FIXAR LAYOUTEN?
*/
SELECT
OBJ.OBJ_OBOTYP,
OBJ.OBJ_OBJNR,
OBJ.OBJ_BOSOK1_OMR_BCD,
CAST(LEFT(RIGHT(SPIN_TEXT, LEN(SPIN_TEXT) - CHARINDEX('inflyttning: ', SPIN_TEXT, 1) - 12),8) AS DATE) AS 'Ködatum',
CAST(SPIN_DATESTAMP_NY AS DATE) AS 'Borttagen',
DATEDIFF(dd,CAST(LEFT(RIGHT(SPIN_TEXT, LEN(SPIN_TEXT) - CHARINDEX('inflyttning: ', SPIN_TEXT, 1) - 12), 8) AS DATE),CAST(SPIN_DATESTAMP_NY AS DATE)) AS dagar
--AVG(DATEDIFF(dd,CAST(LEFT(RIGHT(SPIN_TEXT, LEN(SPIN_TEXT) - CHARINDEX('inflyttning: ', SPIN_TEXT, 1) - 12), 8) AS DATE),CAST(SPIN_DATESTAMP_NY AS DATE))) AS 'snitt'
FROM
SPIN
INNER JOIN PKU ON SPIN.SPIN_PARENT_KEY = PKU_KUNDNRINTERN
INNER JOIN OBJ ON PKU.PKU_KUNDNR = OBJ.OBJ_KUNDNR
WHERE
SPIN_SOKNAMN LIKE 'Borttagen%'
AND SPIN_TEXT LIKE '%Köplats%borttagen%inflyttning%'
AND SPIN_TYP = 'BOKO'
AND YEAR(SPIN_DATESTAMP_NY) >= '2022'
AND OBJ.OBJ_OBJTYP LIKE 'B%'
--AND SPIN_TEXT LIKE '%intern:62120%' -- Alex interna kundnr
SELECT TOP 1 * FROM SPIN WHERE SPIN_TYP = 'BOKO' AND SPIN_SOKNAMN LIKE 'Borttagen%'
SELECT * FROM SPIN WHERE SPIN_PARENT_KEY = '62120'

46
mssql/moms_koll.sql Normal file
View file

@ -0,0 +1,46 @@
USE FAST2;
-- Företag som parameter?
SELECT DISTINCT o.OBJ_OBJNR,
o.OBJ_OBJTYP,
o.OBJ_ADR,
o.OBJ_HNAMN,
o.OBJ_MOMSMARK,
r.AVR_MOMSPL,
p.PKO_PKT_MOMSKOD
FROM OBJ o
INNER JOIN AVT h ON o.OBJ_AVTNR = h.AVT_AVTNR
INNER JOIN AVR r ON h.AVT_AVTNR = r.AVR_AVTNR
INNER JOIN PKO p ON o.OBJ_OBJNR = p.PKO_OBJNR
WHERE o.OBJ_OBOTYP NOT LIKE 'P%'
AND o.OBJ_HNAMN NOT IN ('PROJEKT', 'RENOVERING')
--AND o.OBJ_FTGNR = 'EHB'
AND o.OBJ_OBOTYP NOT LIKE 'G%'
AND o.OBJ_AVTNR != '999999999'
AND p.PKO_PKTYP NOT IN ('3614', 'VVMJUST', 'KVMJUST', 'ELBJUST', 'VVMSCHAB', 'KVMSCHAB', 'TFVATT', 'T880')
AND p.PKO_PKTYP NOT LIKE 'HBO%'
AND p.PKO_HTYP = 'HYRA'
AND (p.PKO_TOMDAT >= CONVERT(VARCHAR(8), GETDATE(), 112) OR p.PKO_TOMDAT = 'TV')
AND o.OBJ_OBJNR = r.AVR_OBJNR
AND NOT (o.OBJ_MOMSMARK = 'N' AND r.AVR_MOMSPL = 'N' AND (p.PKO_PKT_MOMSKOD = '0' OR p.PKO_PKT_MOMSKOD = 'MOMSFR'))
AND NOT (o.OBJ_MOMSMARK = 'J' AND r.AVR_MOMSPL = 'J' AND p.PKO_PKT_MOMSKOD = 'FULLMO')
AND (
OBJ_IAKTDAT IS NULL
OR OBJ_IAKTDAT = ''
OR OBJ_IAKTDAT >= CONVERT(
VARCHAR(8),
GETDATE(),
112
)
)
AND (
OBJ_FORSALJDATUM IS NULL
OR OBJ_FORSALJDATUM = ''
OR OBJ_FORSALJDATUM >= CONVERT(
VARCHAR(8),
GETDATE(),
112
)
)
ORDER BY o.OBJ_OBJNR

View file

@ -0,0 +1,6 @@
SELECT c.name AS ColName,
t.name AS TableName
FROM sys.columns c
JOIN sys.tables t
ON c.object_id = t.object_id
WHERE c.name LIKE '%FU_STATUS%'

18
mssql/tmp_tbl.sql Normal file
View file

@ -0,0 +1,18 @@
/*
Hur man skapar en temptabell i minnet databasen.
*/
--visible only to me, in memory (SQL 2000 and above only)
declare @test table (
FOL_RSN bigint,
FOL_ID bigint,
FOL_BESK VARCHAR(50),
FOL_VISAS CHAR(1)
);
INSERT INTO @test (FOL_RSN, FOL_ID, FOL_BESK, FOL_VISAS) --VALUES (1,1,'asdf',1)
SELECT * FROM FU_ORIGIN_LIST AS a
SELECT * FROM @test

17
mssql/ue_ao_dump.sql Normal file
View file

@ -0,0 +1,17 @@
USE FAST2;
SELECT f.FU_FELRADNR AS 'ao_nr',
f.FU_REGDAT AS 'reg_datum',
s.SPIN_SOKNAMN AS 'spin_rubrik',
s.SPIN_DATESTAMP_NY AS 'spin_tid',
s.SPIN_IDSTAMP_NY AS 'spin_id',
REPLACE(REPLACE(s.SPIN_TEXT, CHAR(13), ''), CHAR(10), '') AS 'spin_text',
FROM FU f
INNER JOIN SPIN s ON f.FU_FELRADNR = s.SPIN_PARENT_KEY
WHERE f.FU_RESURS = 'BUNECO'
AND f.FU_REGDAT BETWEEN '20230401' AND '20240111'
AND s.SPIN_TYP NOT IN ('AOEPOSTPKU', 'AOSMSPKU', 'AOSENT')
AND s.SPIN_TEXT NOT IN ('Registrerad')
AND s.SPIN_TEXT NOT LIKE '%Föregående utförare: %'
AND s.SPIN_TEXT NOT LIKE '%Ny utförare: %'
ORDER BY ao_nr ASC