Vraag : SQL Server opgeslagen procedure

Ik heb als volgt een opgeslagen procedure. Mijn vraag is kan ik #tmp_- lijsten (ex #tmp_initial_RMD_candidates) gebruiken om middengegevens op te nemen en dan de definitieve gegevens te laden in een lijst „tp_“ die zal worden gebruikt om een rapport te produceren?
************************** ********** ********** ********** ********** ********** ********** *********
If er BESTAAT (SELECTEER * UIT INFORMATION_SCHEMA.TABLES WAAR TABLE_SCHEMA = „dbo“ EN TABLE_NAME = „tp_rmd_rpt“)/> de LIJST van de DALING
GO
IF BESTAAT (UITGEZOCHTE naam VAN sysindexes
WAAR naam = „ix01“)/> de INDEX van de DALING
GO
--laat vallen lijst tp_rmd_rpt
create- lijst dbo.tp_rmd_rpt
(
prsn_id int.,
pers_id int., varchar
ss_nr (9), varchar
fst_nm (20), varchar
mid_nm (20), varchar
last_nm (20),/> sfx_cd klusje
brth_dt datetime,
deth_dt datetime,
-- verouder decimaal (4.1),
RMD_dt datetime
)
GO
create index ix01 op tp_rmd_rpt (pers_id)/>/****** Voorwerp
GOSET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*
************************** ********** ********** ********** ********** ********** ********** ********** ****/>*:            Opgeslagen Procedure dbo.csp_rmd_rpt
************************** ********** ********** ********** ********** ********** ********** ********** ****
*/
IF er BESTAAT (SELECTEER * UIT INFORMATION_SCHEMA.ROUTINES WAAR ROUTINE_SCHEMA = „dbo“ EN ROUTINE_NAME = „csp_rmd_rpt“)/> de PROCEDURE/>GO

CREATE dbo.csp_rmd_rpt

as

begin

declare @rpt_run_dt datetime
select van de PROCEDURE dbo.csp_rmd_rpt

Select
be_prsn.prsn_id,
pers_id,
fst_nm,
mid_nm,
last_nm,
sfx_cd,
brth_dt,
deth_dt,
convert (decimaal (5.2), (CASE WANNEER DATEPART (D, getdate ()) >= DATEPART (D, brth_dt) TOEN (DATEDIFF (m, brth_dt, getdate ()) /)
ANDERS ((DATEDIFF (m, brth_dt, getdate ()) - 1) EIND)/12.0))  leeftijd,
(geval wanneer dag (dateadd (maand, ((70*12) +6), brth_dt)) = 1 toen dateadd (maand, ((70*12) +6), brth_dt)
anders dateadd (dag, van één dag (dateadd (maand, ((70*12) +6), brth_dt)), dateadd (maand, 1, dateadd (maand, ((70*12) +6), brth_dt)))
eind) RMD_dt
into #tmp_initial_RMD_candidates
From be_prsn, be_empt_hist, be_mbr_acct, acct_stat_vw, be_mbr
Where be_prsn.prsn_id = be_mbr.prsn_id
en be_empt_hist.mbr_id = be_mbr_acct.mbr_id
en be_empt_hist.mbr_id = be_mbr.mbr_id
en be_mbr_acct.acct_id = acct_stat_vw.acct_id
en be_mbr_acct.mbr_id = be_mbr.mbr_id
en be_empt_hist.end_dt in (uitgezochte a.max_end_dt
van (selecteer mbr_id, maximum (end_dt) max_end_dt van be_empt_hist
waar mbr_id =/> groep be_mbr.mbr_id
waar a.max_end_dt! = „2999-12-31“)
en pers_id IS NULL
en pln_id <> 3
en geen DATEDIFF (de MAAND, brth_dt ZET om (DATETIME, '04.15. '+ GIET (COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER MAAND (GETDATE ()) > 4 TOEN JAAR (getdate ()) + 1 ANDERS JAAR (getdate ()) EIND ZOALS varchar)) ) > 846
en acct_stat_vw.eff_dt =
(
UITGEZOCHTE MAXIMUM (x.eff_dt)
VAN acct_stat_vw ALS x
WAAR x.acct_id = acct_stat_vw.acct_id EN x.acct_id = be_mbr_acct.acct_id
en x.acct_stat_cd in (de „HANDELING“, „WACHT“, „DTH“)
en zet om (klusje (10), x.eff_dt, 111) + streptokok (x.acct_id) =/> (uitgezochte maximum
(bekeerling (klusje (10), x2.eff_dt, 111) + streptokok
van
acct_stat_vw x2
where
x2.acct_id = acct_stat_vw.acct_id en x2.acct_id = be_mbr_acct.acct_id
)
)
en acct_stat_vw.acct_stat_cd in (de „HANDELING“, „WACHT“, „DTH“)
group door be_prsn.prsn_id,
pers_id,
ss_nr,
fst_nm,
mid_nm,
last_nm,
sfx_cd,
brth_dt,
deth_dt,
(COMPUTER-AIDED SOFTWARE ENGINEERING WANNEER DATEPART (D, getdate ()) >= DATEPART (D, brth_dt) TOEN (DATEDIFF (m, brth_dt, getdate ()) /)
ANDERS ((DATEDIFF (m, brth_dt, getdate ()) - 1) EIND)/12.0) --verwijder dit uit definitief dossier aangezien de leeftijd niet in definitieve file.
zal getoond worden, (geval wanneer dag (dateadd (maand, ((70*12) +6), brth_dt)) =1 toen dateadd (maand, ((70*12) +6), brth_dt)
anders
dateadd (dag, van één dag (dateadd (maand, ((70*12) +6), brth_dt)), dateadd (maand, 1, dateadd (maand, ((70*12) +6), brth_dt)))
eind)

--krijg acct_bal
select
initial_rmd_accts.pers_id,
initial_rmd_accts.deth_dt,
sum (vw.pre_tax_cntrb+
vw.post_tax_cntrb +
vw.empr_pre_tax_cntrb +
vw.var_empr_pre_tax_cntrb_amt +
vw.var_post_tax_cntrb_amt +
vw.var_pre_tax_cntrb_amt+
vw.unt_cntrb_amt +
vw.pre_tax_unt_cntrb_amt+
vw.rglr_int_item_amt+
vw.var_int_item_amt +
vw.unit_int_item_amt) als tot_acct_bal
into #acct_bal
from #tmp_initial_RMD_candidates initial_rmd_accts, mam_acct_bal_vw VW, be_prsn a, be_mbr B, be_mbr_acct c
where a.pers_id = initial_rmd_accts.pers_id
en a.prsn_id = initial_rmd_accts.prsn_id
en b.prsn_id = a.prsn_id
en c.mbr_id = b.mbr_id
en vw.acct_id = c.acct_id
en c.pln_id <> 3
group door initial_rmd_accts.pers_id, initial_rmd_accts.deth_dt

select
tprmd.pers_id pers_id,
acctbal.deth_dt deth_dt,
acctbal.tot_acct_bal,
tprmd.prsn_id prsn_id,
tprmd.fst_nm fst_nm,
tprmd.mid_nm mid_nm,
tprmd.last_nm last_nm,
tprmd.sfx_cd sfx_cd,
tprmd.brth_dt brth_dt,
tprmd.RMD_dt RMD_dt,/>case
uit wanneer (acctbal.tot_acct_bal = zijn 0.0 en acctbal.deth_dt ongeldig) of (acctbal.tot_acct_bal > zijn 0.0 en acctbal.deth_dt ongeldig) of (acctbal.tot_acct_bal > zijn 0.0 en acctbal.deth_dt niet ongeldig) dan eind aangezien RMD_flag
into #tmp_rmd_flag
from tp_rmd_rpt tprmd zich bij #acct_bal acctbal
op acctbal.pers_id = tprmd.pers_id

insert in tp_rmd_rpt
select
prsn_id aansluit,
pers_id,
ss_nr,
fst_nm,
mid_nm,
last_nm „omvat“, „omvat“
sfx_cd,
brth_dt,
deth_dt,
RMD_dt
from #tmp_rmd_flag
where RMD_flag = --3486

RETURN
END

Antwoord : SQL Server opgeslagen procedure

gelieve te voegen de onderstaande lijn en de controle toe

geen globale (binnen) 1 interface
sysopt verbindings vergunning-vpn-vergunning
toegang-lijst geen-nationaal uitgebreide vergunning ip 10.200.1.0 255.255.255.0 172.25.20.0 255.255.255.0
toegang-lijst geen-nationaal uitgebreide vergunning ip 10.200.1.0 255.255.255.0 172.25.30.0 255.255.255.0
nationaal (binnen) geen-nationaal toegang-lijst 0
Andere oplossingen  
 
programming4us programming4us