937 lines
89 KiB
Transact-SQL
937 lines
89 KiB
Transact-SQL
|
||
/****** Object: Table [dbo].[DMS_Dokument] Script Date: 19.09.2018 19:47:55 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
CREATE TABLE [dbo].[DMS_Dokument](
|
||
[nreintrag] [int] IDENTITY(1,1) NOT NULL,
|
||
[dms_strukturnr] [int] NULL,
|
||
[bezeichnung] [varchar](255) NULL,
|
||
[beschreibung] [varchar](1024) NULL,
|
||
[pfad] [varchar](1024) NULL,
|
||
[erstellt_am] [datetime] NULL,
|
||
[mutiert_am] [datetime] NULL,
|
||
[mutierer] [int] NULL,
|
||
[aktiv] [bit] NULL,
|
||
[indb] [bit] NULL,
|
||
[Termin] [varchar](255) NULL,
|
||
[Erinnerung] [bit] NULL,
|
||
[Termintext] [varchar](1024) NULL,
|
||
[Keyvalue] [int] NULL,
|
||
[dokumentfile] [image] NULL,
|
||
[nrfaktura] [int] NULL,
|
||
CONSTRAINT [PK_DMS_Dokument] PRIMARY KEY CLUSTERED
|
||
(
|
||
[nreintrag] ASC
|
||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
|
||
GO
|
||
/****** Object: Table [dbo].[DMS_Settings] Script Date: 19.09.2018 19:47:55 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
CREATE TABLE [dbo].[DMS_Settings](
|
||
[nreintrag] [int] IDENTITY(1,1) NOT NULL,
|
||
[Einstellung] [varchar](255) NULL,
|
||
[Wert] [varchar](255) NULL,
|
||
[erstellt_am] [datetime] NULL,
|
||
[mutiert_am] [datetime] NULL,
|
||
[mutierer] [int] NULL,
|
||
[aktiv] [bit] NULL,
|
||
CONSTRAINT [PK_DMS_Settings] PRIMARY KEY CLUSTERED
|
||
(
|
||
[nreintrag] ASC
|
||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||
) ON [PRIMARY]
|
||
GO
|
||
/****** Object: Table [dbo].[DMS_Struktur] Script Date: 19.09.2018 19:47:55 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
CREATE TABLE [dbo].[DMS_Struktur](
|
||
[Eintragnr] [int] IDENTITY(1,1) NOT NULL,
|
||
[Parentid] [int] NULL,
|
||
[Bezeichnung] [varchar](255) NULL,
|
||
[erstellt_am] [datetime] NULL,
|
||
[mutiert_am] [datetime] NULL,
|
||
[mutierer] [int] NULL,
|
||
[aktiv] [bit] NULL,
|
||
CONSTRAINT [PK_DMS_Struktur] PRIMARY KEY CLUSTERED
|
||
(
|
||
[Eintragnr] ASC
|
||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||
) ON [PRIMARY]
|
||
GO
|
||
/****** Object: Table [dbo].[dms_vorlage] Script Date: 19.09.2018 19:47:55 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
CREATE TABLE [dbo].[dms_vorlage](
|
||
[nreintrag] [int] IDENTITY(1,1) NOT NULL,
|
||
[strukturnr] [int] NULL,
|
||
[Bezeichnung] [varchar](255) NULL,
|
||
[Beschreibng] [varchar](1024) NULL,
|
||
[aktiv] [bit] NULL,
|
||
[erstllt_am] [datetime] NULL,
|
||
[mutiert_am] [datetime] NULL,
|
||
[mutierer] [int] NULL,
|
||
[vorlage] [image] NULL,
|
||
CONSTRAINT [PK_dms_vorlage] PRIMARY KEY CLUSTERED
|
||
(
|
||
[nreintrag] ASC
|
||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
|
||
GO
|
||
SET IDENTITY_INSERT [dbo].[DMS_Settings] ON
|
||
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (1, N'Dokumente in DB', N'false', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (2, N'Dokumentpfad', N'h:\dpm\dokumente\', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (3, N'Editierbare Dokumenttypne', N'docx,docm,doc,dot,xlsx,xlsm', CAST(N'2018-09-10T00:00:00.000' AS DateTime), NULL, 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (4, N'Sicherungsverzeichnis', N'h:\dpm\dokumente\Sicherungen', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (5, N'Sicherung bei Dokumentbearbieutng', N'True', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (6, N'Preview_Dir', N'h:\dpm\dokumente\Vorschau', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (7, N'Excluded PreviewTypes', N'odt', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (8, N'DM_Struktur eigene Rechnungen', N'6', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (9, N'DMS_Struktur fremde Rechnungen', N'7', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Settings] ([nreintrag], [Einstellung], [Wert], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (10, N'Copy_RG_To_Garanz', N'True', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
SET IDENTITY_INSERT [dbo].[DMS_Settings] OFF
|
||
SET IDENTITY_INSERT [dbo].[DMS_Struktur] ON
|
||
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (0, NULL, N'Root', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (1, 0, N'Briefe', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (2, 0, N'Mails', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (3, 0, N'Bilder', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (5, 0, N'Rechnungen', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (6, 5, N'EIgene Rechnungen', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
INSERT [dbo].[DMS_Struktur] ([Eintragnr], [Parentid], [Bezeichnung], [erstellt_am], [mutiert_am], [mutierer], [aktiv]) VALUES (7, 5, N'Fremde Rechnungen', CAST(N'2018-09-10T00:00:00.000' AS DateTime), CAST(N'2018-09-10T00:00:00.000' AS DateTime), 1, 1)
|
||
SET IDENTITY_INSERT [dbo].[DMS_Struktur] OFF
|
||
|
||
/****** Object: StoredProcedure [dbo].[sp_get_fakturadata] Script Date: 19.09.2018 19:45:03 ******/
|
||
DROP PROCEDURE [dbo].[sp_get_fakturadata]
|
||
GO
|
||
|
||
/****** Object: StoredProcedure [dbo].[sp_get_fakturadata] Script Date: 19.09.2018 19:45:03 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
|
||
-- =============================================
|
||
-- Author: <Author,,Name>
|
||
-- Create date: <Create Date,,>
|
||
-- Description: <Description,,>
|
||
-- =============================================
|
||
CREATE PROCEDURE [dbo].[sp_get_fakturadata]
|
||
@behandlungsnr INT ,
|
||
@typ INT ,
|
||
@betrag FLOAT = 0 ,
|
||
@rate INT = 0,
|
||
@verbuchen INT = 0,
|
||
@kopie INT = 0,
|
||
@ifakturanr INT = 0,
|
||
@iMahnStufe INT = 0,
|
||
@iHauptfakturanr int=0
|
||
AS
|
||
BEGIN
|
||
--INSERT __log (logeintrag) VALUES(@kopie)
|
||
DECLARE @rgdatum DATETIME
|
||
SET @rgdatum=GETDATE()
|
||
IF @kopie = 1 BEGIN
|
||
SELECT @rgdatum=datum FROM faktura WHERE Nrfaktura=@ifakturanr
|
||
END
|
||
IF @iMahnStufe>0 BEGIN
|
||
SET @rgdatum=GETDATE()
|
||
end
|
||
|
||
DECLARE @type INT;
|
||
DECLARE @Tabelle_ohne_datum TABLE
|
||
(
|
||
[Typ] [INT] NULL ,
|
||
[SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[Bezd] [VARCHAR](255) NULL ,
|
||
[Taxpunkte] [FLOAT] NULL ,
|
||
[Menge] [FLOAT] NULL ,
|
||
[Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[Absolut] [INT] NULL ,
|
||
[Leistungstotal] [FLOAT] NULL ,
|
||
[NrBehandlung] INT
|
||
);
|
||
DECLARE @Tabelle_mit_datum TABLE
|
||
(
|
||
[Typ] [INT] NULL ,
|
||
[Datum] [DATE] NULL ,
|
||
[SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[Bezd] [VARCHAR](255) NULL ,
|
||
[Taxpunkte] [FLOAT] NULL ,
|
||
[Menge] [FLOAT] NULL ,
|
||
[Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[Absolut] [BIT] NULL ,
|
||
[Leistungstotal] [FLOAT] NULL ,
|
||
[nrbehandlu] INT
|
||
);
|
||
DECLARE @lr_tabelle_mit_Datum TABLE
|
||
(
|
||
pk INT NOT NULL
|
||
IDENTITY(1, 1) ,
|
||
[L_Datum] [DATE] NULL ,
|
||
[L_SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[L_Bezd] [VARCHAR](255) NULL ,
|
||
[L_Taxpunkte] [FLOAT] NULL ,
|
||
[L_Menge] [FLOAT] NULL ,
|
||
[L_Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[L_Absolut] [BIT] NULL ,
|
||
[L_Leistungstotal] [FLOAT] NULL ,
|
||
[R_Datum] [DATE] NULL ,
|
||
[R_SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[R_Bezd] [VARCHAR](255) NULL ,
|
||
[R_Taxpunkte] [FLOAT] NULL ,
|
||
[R_Menge] [FLOAT] NULL ,
|
||
[R_Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[R_Absolut] [BIT] NULL ,
|
||
[R_Leistungstotal] [FLOAT] NULL ,
|
||
PRIMARY KEY ( pk )
|
||
);
|
||
|
||
DECLARE @lr_tabelle_dentotar TABLE
|
||
(
|
||
pk INT NOT NULL
|
||
IDENTITY(1, 1) ,
|
||
datum DATE NULL ,
|
||
tarif VARCHAR(255) ,
|
||
tarifziffer VARCHAR(255) NULL ,
|
||
tariftext VARCHAR(255) NULL ,
|
||
bezugsziffer VARCHAR(255) NULL ,
|
||
si VARCHAR(255) NULL ,
|
||
st VARCHAR(255) NULL ,
|
||
anzahl INT NULL ,
|
||
tpal_preis DECIMAL(10, 2) NULL ,
|
||
f_al DECIMAL(10, 2) NULL ,
|
||
tpw_al DECIMAL(10, 2) NULL ,
|
||
f_tl DECIMAL(10, 2) NULL ,
|
||
tpw_tl DECIMAL(10, 2) NULL ,
|
||
a INT NULL ,
|
||
v INT NULL ,
|
||
p INT NULL ,
|
||
m INT NULL ,
|
||
betrag DECIMAL(10, 2) NULL PRIMARY KEY ( pk )
|
||
);
|
||
|
||
|
||
DECLARE @lr_tabelle_ohne_Datum TABLE
|
||
(
|
||
pk INT NOT NULL
|
||
IDENTITY(1, 1) ,
|
||
[L_SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[L_Bezd] [VARCHAR](255) NULL ,
|
||
[L_Taxpunkte] [FLOAT] NULL ,
|
||
[L_Menge] [FLOAT] NULL ,
|
||
[L_Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[L_Absolut] [BIT] NULL ,
|
||
[L_Leistungstotal] [FLOAT] NULL ,
|
||
[R_SSO_Nummer] [VARCHAR](255) NULL ,
|
||
[R_Bezd] [VARCHAR](255) NULL ,
|
||
[R_Taxpunkte] [FLOAT] NULL ,
|
||
[R_Menge] [FLOAT] NULL ,
|
||
[R_Frankenprotaxpunkt] [FLOAT] NULL ,
|
||
[R_Absolut] [BIT] NULL ,
|
||
[R_Leistungstotal] [FLOAT] NULL ,
|
||
PRIMARY KEY ( pk )
|
||
);
|
||
|
||
DECLARE @Nrbehandlung AS INT ,
|
||
@Behandlungsbeginn AS DATE ,
|
||
@Behandlungsende AS DATE ,
|
||
@Patient AS VARCHAR(51) ,
|
||
@Behandler AS VARCHAR(51) ,
|
||
@Taxpunktwert AS FLOAT ,
|
||
@Rabatt AS FLOAT ,
|
||
@Total AS FLOAT ,
|
||
@Rechnungsbemerkung AS VARCHAR(255) ,
|
||
@Ratenzuschlag AS FLOAT ,
|
||
@Andrucken_Taxpunkte AS BIT ,
|
||
@Anzahlung AS FLOAT ,
|
||
@ESTyp INT ,
|
||
@Nrleistung AS INT ,
|
||
@Datum AS DATE ,
|
||
@SSO_Nummer AS VARCHAR(255) ,
|
||
@Taxpunkte AS FLOAT ,
|
||
@Menge AS FLOAT ,
|
||
@Frankenprotaxpunkt AS FLOAT ,
|
||
@Absolut AS BIT ,
|
||
@Leistungstotal AS FLOAT ,
|
||
@Bezd AS VARCHAR(255) ,
|
||
@@AdressZeile1 AS VARCHAR(255) ,
|
||
@AdressZeile2 AS VARCHAR(255) ,
|
||
@AdressZeile3 AS VARCHAR(255) ,
|
||
@AdressZeile4 AS VARCHAR(255) ,
|
||
@AdressZeile5 AS VARCHAR(255) ,
|
||
@Total_SSO AS FLOAT ,
|
||
@Total_Medikamente AS FLOAT ,
|
||
@Total_Labor AS FLOAT ,
|
||
@RabattTotal AS FLOAT ,
|
||
@Vorauszahlung AS FLOAT ,
|
||
@TotalTextblock AS VARCHAR(1024) ,
|
||
@TotalNumBlock AS VARCHAR(1024) ,
|
||
@Anzahlraten INT ,
|
||
@Ungeraterateamstart INT ,
|
||
@i INT ,
|
||
@franken VARCHAR(255) ,
|
||
@rappen VARCHAR(255) ,
|
||
@totalstring VARCHAR(255) ,
|
||
@faelligkeit DATETIME ,
|
||
@hauptfaktura VARCHAR(255);
|
||
|
||
|
||
DECLARE @esdaten TABLE
|
||
(
|
||
[Vs_konto] [VARCHAR](20) NULL ,
|
||
[Vs_belegart] [VARCHAR](2) NULL ,
|
||
[Vs_teilnehmernummer] [VARCHAR](20) NULL ,
|
||
[Vs_besrid] [VARCHAR](20) NULL ,
|
||
[Bankzeile1] [VARCHAR](50) NULL ,
|
||
[Bankzeile2] [VARCHAR](50) NULL ,
|
||
[Bankzeile3] [VARCHAR](50) NULL ,
|
||
[ZuGunstenVon1] [VARCHAR](50) NULL ,
|
||
[ZuGunstenVon2] [VARCHAR](50) NULL ,
|
||
[ZuGunstenVon3] [VARCHAR](50) NULL ,
|
||
[ZuGunstenVon4] [VARCHAR](50) NULL ,
|
||
[Total_Franken] FLOAT ,
|
||
[Nur_Franken] INT ,
|
||
[Nur_Rappen] VARCHAR(2) ,
|
||
Referenzzeile1 VARCHAR(255) ,
|
||
referenzzeile2 VARCHAR(255) ,
|
||
fakturanr VARCHAR(255) ,
|
||
rate INT ,
|
||
zahlungsfrist INT ,
|
||
faelligkeit DATETIME ,
|
||
hauptfaktura VARCHAR(255),
|
||
mahndatum DATETIME,
|
||
mahnfaelligkeit DATETIME,
|
||
mahnzuschlag FLOAT,
|
||
mahnstufe INT,
|
||
FakturaDatum datetime
|
||
|
||
);
|
||
|
||
IF @typ = 1
|
||
BEGIN-- Kontoinformationen / ES_Daten
|
||
DECLARE @manr INT;
|
||
DECLARE @totalbetrag FLOAT;
|
||
DECLARE @rc INT;
|
||
DECLARE @FAKTURANR INT;
|
||
DECLARE @vz FLOAT;
|
||
SELECT @vz = dbo.Get_Totale(5, @behandlungsnr);
|
||
SET @vz = 0;
|
||
SET @rc = 0;
|
||
IF @kopie=1 Or @ifakturanr<>0 BEGIN
|
||
SET @fakturanr=@ifakturanr
|
||
END ELSE BEGIN
|
||
SET @FAKTURANR = dbo.get_FakturaNr();
|
||
END
|
||
IF @betrag <> 0
|
||
SET @totalbetrag = @betrag;
|
||
SELECT @manr = Nrbehandler ,
|
||
@totalbetrag = Total ,
|
||
@Anzahlraten = Anzahlraten ,
|
||
@Ungeraterateamstart = Ungeraterateamstart
|
||
FROM Behandlu
|
||
WHERE Nrbehandlung = @behandlungsnr;
|
||
SET @totalbetrag = dbo.GetRoundedValue(@totalbetrag - @vz);
|
||
SELECT @rc = COUNT(*)
|
||
FROM dbo.VDKonti
|
||
WHERE NrPrivat = @manr;
|
||
PRINT @totalbetrag;
|
||
IF @rc = 0
|
||
SET @manr = 1;
|
||
PRINT FLOOR(@totalbetrag);
|
||
PRINT ( @totalbetrag - FLOOR(@totalbetrag) ) * 100;
|
||
|
||
|
||
DECLARE @temp FLOAT;
|
||
DECLARE @temp1 FLOAT;
|
||
DECLARE @temp2 FLOAT;
|
||
DECLARE @temp3 VARCHAR(255);
|
||
DECLARE @tage_zahlungsfrist INT;
|
||
SELECT @tage_zahlungsfrist = INHALT
|
||
FROM dbo.OPTIONS
|
||
WHERE NROPTION = 2000;
|
||
|
||
IF @Anzahlraten > 1
|
||
BEGIN
|
||
SET @temp = FLOOR(FLOOR(@totalbetrag) / @Anzahlraten); -- Rate ohne Nachkommastellen
|
||
SET @temp1 = @temp * @Anzahlraten;
|
||
SET @temp2 = @temp + ( @totalbetrag - @temp1 ); -- ungerate rate
|
||
IF @rate <= 1
|
||
BEGIN
|
||
IF @Ungeraterateamstart = 1
|
||
BEGIN
|
||
SET @totalbetrag = @temp2;
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
SET @totalbetrag = @temp;
|
||
END;
|
||
SET @hauptfaktura = @FAKTURANR;
|
||
SET @faelligkeit = DATEADD(dd,
|
||
@tage_zahlungsfrist,
|
||
GETDATE());
|
||
SET @faelligkeit = DATEADD(dd,
|
||
@tage_zahlungsfrist,
|
||
@rgdatum);
|
||
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
IF @Ungeraterateamstart = 1
|
||
AND @rate =1
|
||
BEGIN
|
||
SET @totalbetrag = @temp2;
|
||
END;
|
||
ELSE
|
||
if @Ungeraterateamstart = 0 and @rate=@Anzahlraten begin
|
||
set @totalbetrag=@temp2
|
||
end else
|
||
|
||
BEGIN
|
||
SET @totalbetrag = @temp;
|
||
END;
|
||
set @hauptfaktura=@iHauptfakturanr
|
||
|
||
if @kopie=0 set @fakturanr=dbo.get_FakturaNr()
|
||
|
||
SET @faelligkeit = DATEADD(dd,
|
||
@tage_zahlungsfrist
|
||
* @rate, GETDATE());
|
||
SET @faelligkeit = DATEADD(dd,
|
||
@tage_zahlungsfrist
|
||
* @rate, @rgdatum);
|
||
|
||
END;
|
||
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
SET @hauptfaktura = @FAKTURANR;
|
||
SET @faelligkeit = DATEADD(dd, @tage_zahlungsfrist,
|
||
GETDATE());
|
||
SET @faelligkeit = DATEADD(dd, @tage_zahlungsfrist,
|
||
@rgdatum);
|
||
|
||
END;
|
||
|
||
DECLARE @mahndatum date
|
||
DECLARE @mahnfaelligkeit date
|
||
DECLARE @mahnstufe INT
|
||
DECLARE @mahnzuschlag FLOAT
|
||
DECLARE @tmp INT
|
||
DECLARE @tmpbetrag FLOAT
|
||
DECLARE @fakturadatum DATETIME
|
||
SET @mahndatum=GETDATE()
|
||
SET @mahnfaelligkeit=GETDATE()
|
||
SET @mahnzuschlag=0
|
||
|
||
IF @iMahnStufe = 1 BEGIN
|
||
SET @mahndatum=GETDATE()
|
||
SELECT @tmp=inhalt FROM options WHERE NROPTION=5005
|
||
SET @mahnfaelligkeit=@mahndatum
|
||
SET @mahnfaelligkeit=DATEADD(d,@tmp,GETDATE())
|
||
SELECT @mahnzuschlag=inhalt FROM options WHERE nroption=5010
|
||
SELECT @fakturadatum=datum FROM faktura WHERE Nrfaktura=@ifakturanr
|
||
PRINT @ifakturanr
|
||
END
|
||
IF @iMahnStufe = 2 BEGIN
|
||
SELECT @mahndatum = mahndatum1 FROM faktura WHERE Nrfaktura=@FAKTURANR
|
||
--SET @mahndatum=GETDATE()
|
||
SELECT @tmp=inhalt FROM options WHERE NROPTION=5006
|
||
SET @mahnfaelligkeit=@mahndatum
|
||
SET @mahnfaelligkeit=DATEADD(d,@tmp,getdate())
|
||
SELECT @mahnzuschlag=inhalt FROM options WHERE nroption=5011
|
||
END
|
||
IF @iMahnStufe = 3 BEGIN
|
||
SET @mahndatum=GETDATE()
|
||
SELECT @mahndatum = mahndatum2 FROM faktura WHERE Nrfaktura=@FAKTURANR
|
||
SELECT @tmp=inhalt FROM options WHERE NROPTION=5007
|
||
SET @mahnfaelligkeit=@mahndatum
|
||
SET @mahnfaelligkeit=DATEADD(d,@tmp,GETDATE())
|
||
SELECT @mahnzuschlag=inhalt FROM options WHERE nroption=5012
|
||
END
|
||
SET @totalbetrag=@totalbetrag+@mahnzuschlag
|
||
|
||
SET @totalstring = CONVERT(NUMERIC(10, 2), @totalbetrag);
|
||
SET @franken = SUBSTRING(@totalstring, 1,
|
||
CHARINDEX('.', @totalstring) - 1);
|
||
SET @rappen = SUBSTRING(@totalstring,
|
||
CHARINDEX('.', @totalstring) + 1, 2);
|
||
WHILE LEN(@rappen)<2 BEGIN
|
||
SET @rappen='0'+LTRIM(RTRIM(STR(@rappen)))
|
||
END
|
||
|
||
PRINT @franken;
|
||
PRINT @rappen;
|
||
PRINT @totalstring;
|
||
INSERT @esdaten
|
||
SELECT Vs_konto ,
|
||
Vs_belegart ,
|
||
Vs_teilnehmernummer ,
|
||
Vs_besrid ,
|
||
Bankzeile1 ,
|
||
Bankzeile2 ,
|
||
Bankzeile3 ,
|
||
ZuGunstenVon1 ,
|
||
ZuGunstenVon2 ,
|
||
ZuGunstenVon3 ,
|
||
ZuGunstenVon4 ,
|
||
@totalbetrag ,
|
||
@franken ,--FLOOR(@totalbetrag) ,
|
||
@rappen ,--( @totalbetrag - FLOOR(@totalbetrag) ) * 100 ,
|
||
' ' ,
|
||
' ' ,
|
||
@FAKTURANR ,
|
||
@rate ,
|
||
@tage_zahlungsfrist ,
|
||
@faelligkeit ,
|
||
@hauptfaktura,
|
||
@mahndatum,
|
||
@mahnfaelligkeit,
|
||
@mahnzuschlag,
|
||
@imahnstufe,
|
||
@fakturadatum
|
||
FROM dbo.VDKonti
|
||
WHERE NrPrivat = @manr;
|
||
|
||
|
||
|
||
|
||
SELECT *
|
||
FROM @esdaten;
|
||
|
||
|
||
END;
|
||
|
||
DECLARE @mitdatum INT;
|
||
SELECT @mitdatum = MitDatum
|
||
FROM Behandlu
|
||
WHERE Nrbehandlung = @behandlungsnr;
|
||
|
||
|
||
IF @typ = 2
|
||
BEGIN -- Empfängerdaten / Allg Behandlung / Totale
|
||
DECLARE @absenderort AS VARCHAR(255)
|
||
SELECT TOP 1 @absenderort = absenderort FROM absender
|
||
SET @absenderort=@absenderort + ', '+CONVERT(VARCHAR(10),@rgdatum,104)
|
||
SELECT 1 AS Typ ,
|
||
@rgdatum AS Rechnungsdatum,
|
||
@mitdatum AS MitDatum ,
|
||
dbo.Behandlu.Nrbehandlung ,
|
||
dbo.Behandlu.Behandlungsbeginn ,
|
||
dbo.Behandlu.Behandlungsende ,
|
||
dbo.PRIVAT.NAME + ' ' + dbo.PRIVAT.VORNAME AS Patient ,
|
||
dbo.PRIVAT.NAME AS Patient_Name ,
|
||
dbo.PRIVAT.VORNAME AS Patient_Vorname ,
|
||
dbo.PRIVAT.STRASSE AS Patient_Strasse ,
|
||
dbo.PRIVAT.PLZ AS Patient_PLZ ,
|
||
dbo.PRIVAT.ORT AS Patient_Ort ,
|
||
dbo.PRIVAT.Kanton AS Patient_Kanton ,
|
||
dbo.PRIVAT.AHVNR AS Patient_AHVNr ,
|
||
CASE WHEN dbo.PRIVAT.GESCHLECHT = 0 THEN 'M'
|
||
ELSE 'W'
|
||
END AS Patient_Geschlecht ,
|
||
CONVERT(VARCHAR(10),dbo.PRIVAT.GEBDAT,104) AS Patient_Geburtsdatum ,
|
||
dbo.PRIVAT.GLN AS Patient_GLNr ,
|
||
privat_1.NAME + ' ' + privat_1.VORNAME AS Behandler ,
|
||
dbo.Behandlu.Taxpunktwert ,
|
||
dbo.Behandlu.Rabatt ,
|
||
dbo.Behandlu.Total ,
|
||
dbo.Behandlu.Rechnungsbemerkung ,
|
||
dbo.Behandlu.Ratenzuschlag ,
|
||
dbo.Behandlu.Andrucken_Taxpunkte ,
|
||
dbo.Behandlu.Anzahlung ,
|
||
dbo.Behandlu.Nrestyp ,
|
||
dbo.Behandlu.Fallnummer ,
|
||
dbo.Behandlu.Anzahlraten ,
|
||
dbo.Behandlu.Unfalldatum,
|
||
dbo.behandlu.Datum_Kostengutsprache,
|
||
dbo.behandlu.Kostengutsprache_Nummer,
|
||
dbo.behandlu.Behandlungsgrund,
|
||
dbo.behandlu.Diagnose,
|
||
dbo.behandlu.GLN_Liste,
|
||
dbo.get_adresszeile(1, dbo.Behandlu.Nrbehandlung) AS AdressZeile1 ,
|
||
dbo.get_adresszeile(2, dbo.Behandlu.Nrbehandlung) AS AdressZeile2 ,
|
||
dbo.get_adresszeile(3, dbo.Behandlu.Nrbehandlung) AS AdressZeile3 ,
|
||
dbo.get_adresszeile(4, dbo.Behandlu.Nrbehandlung) AS AdressZeile4 ,
|
||
dbo.get_adresszeile(5, dbo.Behandlu.Nrbehandlung) AS AdressZeile5 ,
|
||
dbo.Get_Dentotar_Parameter(11,
|
||
dbo.Behandlu.Nrbehandlung) AS GLN_Empfaenger ,
|
||
dbo.get_adresse(dbo.Behandlu.Nrbehandlung, 0) AS Empfaenger ,
|
||
dbo.Get_Totale(1, dbo.Behandlu.Nrbehandlung) AS Total_SSO ,
|
||
dbo.Get_Totale(2, dbo.Behandlu.Nrbehandlung) AS Total_Medikamente ,
|
||
dbo.Get_Totale(3, dbo.Behandlu.Nrbehandlung) AS Total_Labor ,
|
||
dbo.Get_Totale(4, dbo.Behandlu.Nrbehandlung) AS RabattTotal ,
|
||
dbo.Get_Totale(5, dbo.Behandlu.Nrbehandlung) AS Vorauszahlung ,
|
||
dbo.get_totalblock(1, dbo.Behandlu.Nrbehandlung) AS TotalTextblock ,
|
||
dbo.get_totalblock(2, dbo.Behandlu.Nrbehandlung) AS TotalNumBlock ,
|
||
dbo.Get_Dentotar_Parameter(1,
|
||
dbo.Behandlu.Nrbehandlung) AS Rechnungstitel ,
|
||
dbo.Get_Dentotar_Parameter(2,
|
||
dbo.Behandlu.Nrbehandlung) AS Dokument_Identifikation ,
|
||
dbo.Get_Dentotar_Parameter(3,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_GLN ,
|
||
dbo.Get_Dentotar_Parameter(4,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_ZSR ,
|
||
dbo.Get_Dentotar_Parameter(5,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_Name ,
|
||
dbo.Get_Dentotar_Parameter(6,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_Adresse ,
|
||
dbo.Get_Dentotar_Parameter(15,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_Tel ,
|
||
dbo.Get_Dentotar_Parameter(16,
|
||
dbo.Behandlu.Nrbehandlung) AS RG_Steller_Fax ,
|
||
(SELECT ISNULL(GLN,'') FROM privat WHERE nrprivat=behandlu.Nrbehandler) AS Leistungserbringer_GSN,
|
||
(SELECT ISNULL(ZSR,'') FROM privat WHERE nrprivat=behandlu.Nrbehandler) AS Leistungserbringer_ZSR,
|
||
(SELECT name+' '+vorname FROM privat WHERE nrprivat=behandlu.Nrbehandler) AS Leistungserbringer_Name,
|
||
--dbo.Get_Dentotar_Parameter(7,
|
||
-- dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_GSN ,
|
||
--dbo.Get_Dentotar_Parameter(8,
|
||
-- dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_ZSR ,
|
||
--dbo.Get_Dentotar_Parameter(9,
|
||
-- dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_Name ,
|
||
dbo.Get_Dentotar_Parameter(10,
|
||
dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_Adresse ,
|
||
dbo.Get_Dentotar_Parameter(12,
|
||
dbo.Behandlu.Nrbehandlung) AS Verguetungsart ,
|
||
--dbo.Get_Dentotar_Parameter(13,
|
||
-- dbo.Behandlu.Nrbehandlung) AS Gesetz ,
|
||
dbo.get_gesetz(dbo.Behandlu.Nrbehandlung) AS Gesetz,
|
||
dbo.Get_Dentotar_Parameter(14,
|
||
dbo.Behandlu.Nrbehandlung) AS Rolle_Ort ,
|
||
dbo.Get_Dentotar_Parameter(17,
|
||
dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_Tel ,
|
||
dbo.Get_Dentotar_Parameter(18,
|
||
dbo.Behandlu.Nrbehandlung) AS Leistungserbringer_Fax,
|
||
CASE WHEN @kopie=0 THEN 'nein' ELSE 'nein' END AS Kopie,
|
||
@absenderort AS Absenderort_Datum,
|
||
dbo.get_behandlungsart(dbo.behandlu.nrbehandlung) AS Behandlungsart
|
||
INTO #tmp1
|
||
FROM dbo.Behandlu
|
||
INNER JOIN dbo.PRIVAT ON dbo.Behandlu.Nrpatient = dbo.PRIVAT.NRPRIVAT
|
||
INNER JOIN dbo.PRIVAT AS privat_1 ON dbo.Behandlu.Nrbehandler = privat_1.NRPRIVAT
|
||
|
||
WHERE Behandlu.Nrbehandlung = @behandlungsnr;
|
||
|
||
SELECT *
|
||
FROM #tmp1;
|
||
END;
|
||
|
||
|
||
IF @typ = 3
|
||
OR @typ = 4
|
||
BEGIN -- Leistungen
|
||
|
||
DECLARE @pk INT;
|
||
IF @mitdatum = 1
|
||
BEGIN -- Nach Datum
|
||
|
||
INSERT @Tabelle_mit_datum
|
||
SELECT *
|
||
FROM View_Leistungen_mit_Datum
|
||
WHERE Nrbehandlung = @behandlungsnr
|
||
ORDER BY Datum ,
|
||
SSO_Nummer;
|
||
SET @i = 1;
|
||
DECLARE xc CURSOR
|
||
FOR
|
||
SELECT *
|
||
FROM @Tabelle_mit_datum
|
||
ORDER BY Datum ,
|
||
[SSO_Nummer];
|
||
OPEN xc;
|
||
FETCH NEXT FROM xc INTO @type, @Datum, @SSO_Nummer,
|
||
@Bezd, @Taxpunkte, @Menge, @Frankenprotaxpunkt,
|
||
@Absolut, @Leistungstotal, @Nrbehandlung;
|
||
WHILE @@FETCH_STATUS = 0
|
||
BEGIN
|
||
IF @i = 1
|
||
BEGIN
|
||
INSERT @lr_tabelle_mit_Datum
|
||
( L_Datum ,
|
||
L_SSO_Nummer ,
|
||
L_Bezd ,
|
||
L_Taxpunkte ,
|
||
L_Menge ,
|
||
L_Frankenprotaxpunkt ,
|
||
L_Absolut ,
|
||
L_Leistungstotal ,
|
||
R_Datum ,
|
||
R_SSO_Nummer ,
|
||
R_Bezd ,
|
||
R_Taxpunkte ,
|
||
R_Menge ,
|
||
R_Frankenprotaxpunkt ,
|
||
R_Absolut ,
|
||
R_Leistungstotal
|
||
)
|
||
VALUES ( @Datum , -- L_Datum - date
|
||
@SSO_Nummer , -- L_SSO_Nummer - int
|
||
@Bezd , -- L_Bezd - varchar(255)
|
||
@Taxpunkte , -- L_Taxpunkte - float
|
||
@Menge , -- L_Menge - float
|
||
@Frankenprotaxpunkt , -- L_Frankenprotaxpunkt - float
|
||
@Absolut , -- L_Absolut - bit
|
||
@Leistungstotal , -- L_Leistungstotal - float
|
||
NULL , -- R_Datum - date
|
||
NULL , -- R_SSO_Nummer - int
|
||
CONVERT(VARCHAR(255), '') , -- R_Bezd - varchar(255)
|
||
NULL , -- R_Taxpunkte - float
|
||
NULL , -- R_Menge - float
|
||
NULL , -- R_Frankenprotaxpunkt - float
|
||
NULL , -- R_Absolut - bit
|
||
NULL -- R_Leistungstotal - float
|
||
);
|
||
|
||
SET @i = @i + 1;
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
SELECT TOP 1
|
||
@pk = pk
|
||
FROM @lr_tabelle_mit_Datum
|
||
ORDER BY pk DESC;
|
||
UPDATE @lr_tabelle_mit_Datum
|
||
SET R_Datum = @Datum ,
|
||
R_SSO_Nummer = @SSO_Nummer ,
|
||
R_Bezd = @Bezd ,
|
||
R_Taxpunkte = @Taxpunkte ,
|
||
R_Menge = @Menge ,
|
||
R_Frankenprotaxpunkt = @Frankenprotaxpunkt ,
|
||
R_Absolut = @Absolut ,
|
||
R_Leistungstotal = @Leistungstotal
|
||
WHERE pk = @pk;
|
||
SET @i = 1;
|
||
END;
|
||
FETCH NEXT FROM xc INTO @type, @Datum,
|
||
@SSO_Nummer, @Bezd, @Taxpunkte, @Menge,
|
||
@Frankenprotaxpunkt, @Absolut,
|
||
@Leistungstotal, @Nrbehandlung;
|
||
END;
|
||
CLOSE xc;
|
||
DEALLOCATE xc;
|
||
IF @typ = 4
|
||
BEGIN
|
||
PRINT 'a0';
|
||
SELECT *
|
||
FROM @lr_tabelle_mit_Datum;
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
SELECT *
|
||
FROM @Tabelle_mit_datum;
|
||
END;
|
||
|
||
END;
|
||
ELSE
|
||
BEGIN -- ohne Datum
|
||
|
||
INSERT @Tabelle_ohne_datum
|
||
SELECT *
|
||
FROM View_Leistungen_ohne_Datum
|
||
WHERE Nrbehandlung = @behandlungsnr
|
||
ORDER BY SSO_Nummer;
|
||
SET @i = 1;
|
||
|
||
DECLARE xc CURSOR
|
||
FOR
|
||
SELECT *
|
||
FROM @Tabelle_ohne_datum
|
||
ORDER BY [SSO_Nummer];
|
||
OPEN xc;
|
||
FETCH NEXT FROM xc INTO @type, @SSO_Nummer, @Bezd,
|
||
@Taxpunkte, @Menge, @Frankenprotaxpunkt, @Absolut,
|
||
@Leistungstotal, @Nrbehandlung;
|
||
WHILE @@FETCH_STATUS = 0
|
||
BEGIN
|
||
IF @i = 1
|
||
BEGIN
|
||
INSERT @lr_tabelle_ohne_Datum
|
||
( L_SSO_Nummer ,
|
||
L_Bezd ,
|
||
L_Taxpunkte ,
|
||
L_Menge ,
|
||
L_Frankenprotaxpunkt ,
|
||
L_Absolut ,
|
||
L_Leistungstotal ,
|
||
R_SSO_Nummer ,
|
||
R_Bezd ,
|
||
R_Taxpunkte ,
|
||
R_Menge ,
|
||
R_Frankenprotaxpunkt ,
|
||
R_Absolut ,
|
||
R_Leistungstotal
|
||
)
|
||
VALUES ( @SSO_Nummer , -- L_SSO_Nummer - int
|
||
@Bezd , -- L_Bezd - varchar(255)
|
||
@Taxpunkte , -- L_Taxpunkte - float
|
||
@Menge , -- L_Menge - float
|
||
@Frankenprotaxpunkt , -- L_Frankenprotaxpunkt - float
|
||
@Absolut , -- L_Absolut - bit
|
||
@Leistungstotal , -- L_Leistungstotal - float
|
||
NULL , -- R_SSO_Nummer - int
|
||
CONVERT(VARCHAR(255), '') , -- R_Bezd - varchar(255)
|
||
NULL , -- R_Taxpunkte - float
|
||
NULL , -- R_Menge - float
|
||
NULL , -- R_Frankenprotaxpunkt - float
|
||
NULL , -- R_Absolut - bit
|
||
NULL -- R_Leistungstotal - float
|
||
);
|
||
SET @i = @i + 1;
|
||
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
|
||
SELECT TOP 1
|
||
@pk = pk
|
||
FROM @lr_tabelle_ohne_Datum
|
||
ORDER BY pk DESC;
|
||
PRINT @pk;
|
||
UPDATE @lr_tabelle_ohne_Datum
|
||
SET R_SSO_Nummer = @SSO_Nummer ,
|
||
R_Bezd = @Bezd ,
|
||
R_Taxpunkte = @Taxpunkte ,
|
||
R_Menge = @Menge ,
|
||
R_Frankenprotaxpunkt = @Frankenprotaxpunkt ,
|
||
R_Absolut = @Absolut ,
|
||
R_Leistungstotal = @Leistungstotal
|
||
WHERE pk = @pk;
|
||
SET @i = 1;
|
||
END;
|
||
FETCH NEXT FROM xc INTO @type, @SSO_Nummer,
|
||
@Bezd, @Taxpunkte, @Menge,
|
||
@Frankenprotaxpunkt, @Absolut,
|
||
@Leistungstotal, @Nrbehandlung;
|
||
END;
|
||
CLOSE xc;
|
||
DEALLOCATE xc;
|
||
IF @typ = 4
|
||
BEGIN
|
||
SELECT '' AS Datum ,
|
||
*
|
||
FROM @lr_tabelle_ohne_Datum;
|
||
END;
|
||
ELSE
|
||
BEGIN
|
||
SELECT '' AS Datum ,
|
||
*
|
||
FROM @Tabelle_ohne_datum;
|
||
END;
|
||
|
||
END;
|
||
END;
|
||
|
||
IF @typ = 5
|
||
BEGIN
|
||
SELECT *
|
||
FROM View_Leistungen_Dentotar
|
||
WHERE Nrbehandlung = @behandlungsnr;
|
||
END;
|
||
|
||
|
||
|
||
END;
|
||
|
||
GO
|
||
|
||
/****** Object: UserDefinedFunction [dbo].[get_adresse_firmaprivat] Script Date: 29.09.2018 10:05:23 ******/
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
|
||
-- =============================================
|
||
-- Author: <Author,,Name>
|
||
-- Create date: <Create Date, ,>
|
||
-- Description: <Description, ,>
|
||
-- =============================================
|
||
CREATE FUNCTION [dbo].[get_adresse_firmaprivat]
|
||
(
|
||
@keyvalue INT,
|
||
@einzeilig INT=0
|
||
)
|
||
RETURNS varchar(255)
|
||
AS
|
||
BEGIN
|
||
DECLARE @Adresstype int
|
||
DECLARE @res VARCHAR(255)
|
||
DECLARE @res2 VARCHAR(255)
|
||
DECLARE @ansprechpartner INT
|
||
declare @adresse varchar(255)
|
||
DECLARE @crlf varchar(2)
|
||
SET @crlf = char(13) + char(10)
|
||
IF @einzeilig=1 SET @crlf = ' '
|
||
|
||
|
||
IF @keyvalue > 49000 GOTO Firmenadresse
|
||
|
||
SET @adresse=''
|
||
SET @res=''
|
||
SELECT @res=dbo.anrede.Anrede_D FROM dbo.anrede INNER JOIN dbo.privat ON dbo.anrede.NRANREDE = dbo.privat.NRANREDE
|
||
WHERE (dbo.privat.NRPRIVAT = @keyvalue)
|
||
SET @adresse=@res
|
||
SET @res=''
|
||
SELECT @res=ISNULL(dbo.titel.titel_d,'') FROM dbo.Titel INNER JOIN dbo.privat ON dbo.titel.nrtitel = dbo.privat.nrtitel
|
||
WHERE (dbo.privat.NRPRIVAT = @keyvalue)
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=''
|
||
|
||
SELECT @res= vorname+' '+name FROM privat WHERE NRPRIVAT=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=''
|
||
|
||
SELECT @res=ISNULL(COADRESSE,'') FROM privat WHERE (dbo.privat.NRPRIVAT = @keyvalue)
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=''
|
||
|
||
SELECT @res=ISNULL(COADRESSE,'') FROM privat WHERE (dbo.privat.NRPRIVAT = @keyvalue)
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=''
|
||
|
||
SELECT @res= STRASSE FROM privat WHERE NRPRIVAT=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=''
|
||
|
||
SELECT @res=plz+' '+ort FROM privat WHERE NRPRIVAT=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=@adresse
|
||
GOTO ende
|
||
|
||
firmenadresse:
|
||
SET @adresse=''
|
||
SET @res=''
|
||
SELECT @adresse=name1 FROM firma WHERE NRFIRMA=@keyvalue
|
||
SELECT @res=ISNULL(name2,'') FROM dbo.FIRMA WHERE NRFIRMA=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SELECT @res=ISNULL(dbo.ANREDE.Anrede_D +' '+ dbo.firmaap.NAME,'') FROM dbo.ANREDE LEFT OUTER JOIN dbo.FIRMAAP ON dbo.ANREDE.NRANREDE = dbo.FIRMAAP.NRANREDE
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SELECT @res=ISNULL(strasse,'') FROM dbo.FIRMA WHERE NRFIRMA=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SELECT @res=ISNULL(POSTFACH,'') FROM dbo.FIRMA WHERE NRFIRMA=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SELECT @res=ISNULL(plz+' '+ort,'') FROM dbo.FIRMA WHERE NRFIRMA=@keyvalue
|
||
IF @res<>'' SET @adresse=@adresse+@crlf+@res
|
||
SET @res=@adresse
|
||
|
||
|
||
|
||
ende:
|
||
RETURN @res
|
||
END
|
||
GO
|
||
|
||
|
||
|