Question : Procédé stocké de serveur de SQL

J'ai un procédé stocké comme suit. Ma question est peut moi emploient des tables de #tmp_ (#tmp_initial_RMD_candidates) pour insérer des données intermédiaires et puis pour charger les données finales dans une table de « tp_ » qui sera employée pour produire d'un rapport ? le
If de ********* du de ********** du de ********** du de ********** du de ********** du de ********** du de ********** du de ************************** du
EXISTE (CHOISIR * À PARTIR D'INFORMATION_SCHEMA.TABLES OÙ TABLE_SCHEMA = « dbo » ET TABLE_NAME = « tp_rmd_rpt ") le tp_rmd_rpt
GO
IF de TABLE de BAISSE du
EXISTE (nom CHOISI du sysindexes
OÙ nom = « ix01 ») l'INDEX tp_rmd_rpt.ix01
GO
de BAISSE du
--laisser tomber la table dbo.tp_rmd_rpt
(prsn_id international, pers_id international, ss_nr du tp_rmd_rpt
create de table de
de
de
varchar (9), fst_nm de
varchar (20), mid_nm de
varchar (20), last_nm de
varchar (20), char de sfx_cd de
(4), date-heure de brth_dt de
, date-heure de deth_dt de
,
-- vieillir la décimale (4.1), l'index ix01 du
GO
create du datetime
du
RMD_dt) sur l'objet de ****** du
GO
/de tp_rmd_rpt (pers_id) :  StoredProcedure [dbo]. [date de manuscrit de csp_rmd_rpt] : 06/02/2010 7h24 : 22 objet du
* de **** du de ********** du de ********** du de ********** du de ********** du de ********** du de ********** du de ********** du de ************************** du ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*
:            Le
*/
IF de **** du de ********** du de ********** du de ********** du de ********** du de ********** du de ********** du de ********** du de ************************** du
du procédé stocké dbo.csp_rmd_rpt EXISTE (CHOISIR * À PARTIR d'INFORMATION_SCHEMA.ROUTINES OÙ ROUTINE_SCHEMA = « dbo » ET ROUTINE_NAME = « @rpt_run_dt = busn_dt du datetime
select de @rpt_run_dt du PROCÉDÉ dbo.csp_rmd_rpt

as

begin

declare du PROCÉDÉ dbo.csp_rmd_rpt
GO

CREATE de BAISSE du ")
de csp_rmd_rpt du be_busn_dt

Select
be_prsn.prsn_id, le
pers_id, le
fst_nm, le
mid_nm, le
last_nm, le
sfx_cd, le
brth_dt, le
deth_dt, le
convert (décimale (5.2), (CASE QUAND DATEPART (d, le getdate ()) >= DATEPART (d, brth_dt) PUIS (DATEDIFF (m, brth_dt, getdate ()) /12.0)
AUTREMENT ((DATEDIFF (m, brth_dt, getdate ()) - 1)/12.0) EXTRÉMITÉS))  vieillir, le
(cas quand jour (dateadd (mois, ((70*12) +6), le brth_dt)) = 1 puis dateadd d'autre du
de dateadd (mois, ((70*12) +6), brth_dt) (jour, d'une journée (dateadd (mois, ((70*12) +6), brth_dt)), dateadd (mois, 1, dateadd (mois, ((70*12) +6), brth_dt)))be_prsn, be_empt_hist, be_mbr_acct, acct_stat_vw, be_mbr
Where be_prsn.prsn_id = be_mbr.prsn_id
et be_empt_hist.mbr_id = be_mbr_acct.mbr_id
du
From du #tmp_initial_RMD_candidates de RMD_dt
into de fin du
) et be_empt_hist.mbr_id = be_mbr.mbr_id
et be_mbr_acct.acct_id = acct_stat_vw.acct_id
et be_mbr_acct.mbr_id = be_mbr.mbr_id
et be_empt_hist.end_dt dans (a.max_end_dt
de (mbr_id choisi, max_end_dt maximum (d'end_dt) de
de be_empt_hist où mbr_id = groupe de be_mbr.mbr_id
par le mbr_id) l'a
où a.max_end_dt ! = « 2999-12-31 ») le
et le pers_id N'EST PAS NULL
et <> 3
et DATEDIFF (MOIS, brth_dt, CONVERTI (DATE-HEURE de pln_id, '04.15. '+ MOULÉ (CAS QUAND MOIS (getdate ()) > 4 PUIS ANNÉES (getdate ()) + 1 ANNÉE D'AUTRE (getdate ()) EXTRÉMITÉ COMME varchar)) ) > 846
et acct_stat_vw.eff_dt =
(le
CHOISISSENT le
de max (x.eff_dt) À PARTIR de l'acct_stat_vw COMME x
dans OÙ x.acct_id = acct_stat_vw.acct_id ET x.acct_id = be_mbr_acct.acct_id
et x.acct_stat_cd (")
de « ACTE », de « ATTENTE », « de DTH et converti (char (10), x.eff_dt, 111) + streptocoque (x.acct_id) =
(
maximum (converti streptocoque (de char (10), x2.eff_dt, 111) + (x2.acct_id))
du where
de l'acct_stat_vw x2
du

et acct_stat_vw.acct_stat_cd du
de x2.acct_id = d'acct_stat_vw.acct_id et de x2.acct_id = de be_mbr_acct.acct_id
)) dans (le « ACTE », « ATTENDENT », « DTH ") le
group par be_prsn.prsn_id, pers_id du
, ss_nr du
, fst_nm du
, mid_nm du
, last_nm du
, sfx_cd du
, brth_dt du
, deth_dt du
,
(CAS QUAND DATEPART (d, getdate ()) >= DATEPART (d, brth_dt) PUIS (DATEDIFF (m, brth_dt, getdate ()) /12.0)
AUTREMENT ((DATEDIFF (m, brth_dt, getdate ()) - 1)/12.0) EXTRÉMITÉS) --enlever ceci à partir du dossier final car l'âge ne sera pas montré dans le file.
, (cas quand jour (dateadd (mois, ((70*12) +6), le brth_dt)) puis dateadd d'autre du
du
du dateadd =1 (mois, ((70*12) +6), brth_dt) (jour, d'une journée (dateadd (mois, ((70*12) +6), brth_dt)), dateadd (mois, 1, dateadd (mois, ((70*12) +6), brth_dt)))

d'extrémité du
)--obtenir le
initial_rmd_accts.pers_id de l'acct_bal
select, le
initial_rmd_accts.deth_dt du , le
sum (
vw.rglr_int_item_amt+
vw.var_int_item_amt +
vw.unit_int_item_amt de
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+ de vw.pre_tax_cntrb+) en tant qu'initial_rmd_accts #acct_bal du #tmp_initial_RMD_candidates du
from du tot_acct_bal
into, le VW de mam_acct_bal_vw, le be_prsn a, le be_mbr b, le
where du be_mbr_acct c a.pers_id = initial_rmd_accts.pers_id
et l'a.prsn_id = l'initial_rmd_accts.prsn_id
et le
de b.prsn_id = d'a.prsn_id et le
de c.mbr_id = de b.mbr_id et le
de vw.acct_id = de c.acct_id et le <> 3
group de c.pln_id par initial_rmd_accts.pers_id, pers_id du initial_rmd_accts.deth_dt

select
tprmd.pers_id, deth_dt du
acctbal.deth_dt, le
acctbal.tot_acct_bal,
tprmd.prsn_id, fst_nm du
tprmd.fst_nm, mid_nm du
tprmd.mid_nm, last_nm du
tprmd.last_nm, sfx_cd du
tprmd.sfx_cd, brth_dt du
tprmd.brth_dt, le
tprmd.RMD_dt RMD_dt, le
case quand acctbal.tot_acct_bal = 0.0 et acctbal.deth_dt n'est pas nul puis « excluent » le
quand (acctbal.tot_acct_bal = 0.0 et acctbal.deth_dt est nul) ou (acctbal.tot_acct_bal > 0.0 et acctbal.deth_dt est nul) ou (acctbal.tot_acct_bal > 0.0 et acctbal.deth_dt n'est pas nul) alors « inclure » l'extrémité en tant que tprmd de tp_rmd_rpt du
from de #tmp_rmd_flag du
into de RMD_flag joignent l'acctbal
sur acctbal.pers_id = tprmd.pers_id

insert dans le
prsn_id, le
pers_id, le
ss_nr, le
fst_nm, le
mid_nm, le
last_nm du
select de tp_rmd_rpt, le
sfx_cd, le
brth_dt, le
deth_dt, le
where RMD_flag de #tmp_rmd_flag du
RMD_dt
from = « incluent » --3486

RETURN
END
class= de

Réponse : Procédé stocké de serveur de SQL

veuillez ajouter la ligne et le contrôle ci-dessous

aucune (à l'intérieur) 1 interface globale
le raccordement de sysopt permettent-vpn
IP prolongé aucun-national 10.200.1.0 255.255.255.0 172.25.20.0 255.255.255.0 de laiss d'accès-liste
IP prolongé aucun-national 10.200.1.0 255.255.255.0 172.25.30.0 255.255.255.0 de laiss d'accès-liste
(à l'intérieur) 0 accès-listes nationale aucun-nationales
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us