Question : Entires doubles à modifier du procédé stocké

bonjour, le

We ont PS deux qui fait des objectifs doubles pour entrer dans les acesss de période de revue de bussinessorg de table que le

columns sont :  Le

Business_ID
ReviewPeriod_ID

Aprrsaiallock.


here de l'acess_ID de Bussinessorgreviewperiod (PK) sont le PROCÉDÉ du



HRBussiness_org_insert

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER du

1) HRBusiness_Org_Insert



- 2) BusinessOrgReviewPeriodAccess_INS [dbo]. [HRBusiness_Org_Insert] le @parentLFT international du
AS

DECLARE
du
(@Parent_BusinessOrg_ID international de
, @BusinessOrg_Name de
nvarchar (128), int
de @RequestingEmployeeID de
), le @parentIndentation international du
, l'int

if de @newBusOrgID du
((choisir le compte (businessOrg_id) à partir du businessorg où Name=@BusinessOrg_Name) = 0)
Begin
COMMENCENT TRANSACTION

            -- Insérer le @parentLFT CHOISI d'Org
d'autobus = le LFT
du
de BusinessOrg OÙ BusinessOrg_ID = @Parent_BusinessOrg_ID

CHOISISSENT le @parentIndentation = l'Indentation
À PARTIR de BusinessOrg
OÙ BusinessOrg_ID = MISE À JOUR BusinessOrg
du @Parent_BusinessOrg_ID

RÉGLÉ RGHT = RGHT + 2
OÙ RGHT > MISE À JOUR BusinessOrg
du @parentLFT

RÉGLÉ LFT = LFT + 2
OÙ LFT > INSERTION du @ParentLFT

DANS le
VALUES
(@Parent_BusinessOrg_ID, @ParentIndentation de BusinessOrg
(Parent_BusinessOrg_ID, impression, LFT, RGHT, Active, ImageFileName,
ImageFilePath, nom, CheckedOut_By, Created_By_EmpID, Created_DateTime) de
+ 1, @ParentLFT de
+ 1, @ParentLFT de
+ 2,
1, NULLE du
,
« . /images/ », @BusinessOrg_Name du
, @RequestingEmployeeID du
, @RequestingEmployeeID du
, getDate du
())

SI @@ERROR > 0
BEGIN
RAISERROR 50001 'erreur s'insérant dans le @newBusOrgID RÉGLÉ DE RETOUR de TRANSACTION
-1
END

de BAISSE DE PRIX du Br/> de table'< de BusinessOrg = l'IDENT_CURRENT (« BusinessOrg")

            -- Créer les disques absents de scénario basés sur l'INSERTION du parent org.
DANS le @newBusOrgID du
SELECT
de BusOrgScenarioXref
(BusinessOrg_ID, Scenario_ID, ReviewPeriod_ID, Created_DateTime, Created_By_EmpID, Updated_DateTime, Updated_By_EmpID), le getdate du
x.Scenario_ID, du
x.ReviewPeriod_ID, du
(), le @RequestingEmployeeID du
, le getdate du
(), le x
WHERE
du @RequestingEmployeeID
FROM
BusOrgScenarioXref du
x.BusinessOrg_ID = @Parent_BusinessOrg_ID
ET PAS EXISTE (le
xx.*
du xx
de BusOrgScenarioXref OÙ x.Scenario_ID = xx. Scenario_ID
ET x.ReviewPeriod_ID = xx.ReviewPeriod_ID
ET xx.BusinessOrg_ID = @newBusOrgID
) le

S'insertion des erreurs de @@ERROR > 0
BEGIN
RAISERROR 50001 ' dans la BAISSE DE PRIX TRANSACTION
-1
END

du Br/> de table'< de BusOrgScenarioXref            -- Créer les disques absents de config basés sur l'INSERTION du parent org.
DANS le @newBusOrgID du
SELECT
de BusinessOrgConfigOptionXref
(BusinessOrg_ID, ReviewPeriod_ID, ConfigOption_ID, IsSelected, Created_By_EmpID, Created_DateTime,
Updated_By_EmpID, Updated_DateTime), le @RequestingEmployeeID du
x.ReviewPeriod_ID, du
x.ConfigOption_ID, du
x.IsSelected, du
, le getdate du
(), le @RequestingEmployeeID du
, le x
WHERE
du
FROM
BusinessOrgConfigOptionXref de getdate du
() x.BusinessOrg_ID = @Parent_BusinessOrg_ID
ET PAS EXISTE (le
xx.*
du xx
de BusinessOrgConfigOptionXref OÙ x.ReviewPeriod_ID = xx.ReviewPeriod_ID
ET x.ConfigOption_ID = xx.ConfigOption_ID
ET xx.BusinessOrg_ID = @newBusOrgID
) le

SI @@ERROR > 0
BEGIN
RAISERROR 50001 's'insérant dans le
de TRANSACTION
-1
END
de BAISSE DE PRIX du Br/> de table'< de BusinessOrgConfigOptionXref            -- Créer les disques absents de config basés sur l'INSERTION du parent org.
DANS le @newBusOrgID du
SELECT
de BusinessOrgReviewPeriodAccess
(BusinessOrg_ID, ReviewPeriod_ID, AppraisalsLocked), le
p.ReviewPeriod_ID, le p
WHERE
du
p.AppraisalsLocked
FROM
BusinessOrgReviewPeriodAccess p.BusinessOrg_ID = @Parent_BusinessOrg_ID
ET PAS EXISTE (le
pp.*
du pp
de BusinessOrgReviewPeriodAccess OÙ p.ReviewPeriod_ID = pp.ReviewPeriod_ID
ET p.AppraisalsLocked = pp.AppraisalsLocked
ET pp.BusinessOrg_ID = @newBusOrgID
) le
du
SI erreur de @@ERROR > 0
BEGIN
RAISERROR 50001 's'insérant dans le
de TRANSACTION
-1
END
de BAISSE DE PRIX du Br/> de table'< de BusinessOrgReviewPeriodAccess            -- Créer le disque pour des droits de plan de talent basés sur l'INSERTION du parent
DANS le @newBusOrgID du
SELECT
de BusOrgMngrLvlRoleXref
(BusinessOrg_ID, ManagerLevel_ID, AuthorRole_ID, Created_By_Emp_ID, Created_Datetime,
Updated_By_Emp_ID, Updated_DateTime), le @RequestingEmployeeID du
p.ManagerLevel_ID, du
p.AuthorRole_ID, du
, le getdate du
(), le @RequestingEmployeeID du
, le p
WHERE
du
FROM
BusOrgMngrLvlRoleXref de getdate du
() p.BusinessOrg_ID = @Parent_BusinessOrg_ID
ET PAS EXISTE (le
pp.*
du pp
de BusOrgMngrLvlRoleXref OÙ p.ManagerLevel_ID = pp.ManagerLevel_ID
ET p.AuthorRole_ID = pp.AuthorRole_ID
ET pp.BusinessOrg_ID = @newBusOrgID
) le

SI erreur de @@ERROR > 0
BEGIN
RAISERROR 50001 ' s'insérant dans l'INSERTION DE RETOUR de TRANSACTION
-1
END

de BAISSE DE PRIX du Br/> de table'< de BusOrgMngrLvlRoleXref DANS le
SELECT
c.BusOrgMngrLvlRoleXref_ID, px. Section_ID,
px.IsSelected,
px.ColumnPosition, px de BusOrgMngrLvlRoleSectionXref
(BusOrgMngrLvlRoleXref_ID, Section_ID, IsSelected, ColumnPosition, nombre ordinal,
Created_By_Emp_ID, Created_DateTime, Updated_By_Emp_ID, Updated_DateTime) du
du
. Le nombre ordinal, @RequestingEmployeeID du
, getdate du
(), @RequestingEmployeeID du
, le c
du
FROM
BusOrgMngrLvlRoleXref de getdate du
() INTÉRIEUR JOIGNENT BusOrgMngrLvlRoleXref p SUR p.ManagerLevel_ID = c.ManagerLevel_ID
ET p.AuthorRole_ID = c.AuthorRole_ID
ET p.BusinessOrg_ID = @Parent_BusinessOrg_ID
ET c.BusinessOrg_ID = @newBusOrgID
                  INTÉRIEUR JOINDRE le px de BusOrgMngrLvlRoleSectionXref SUR p.BusOrgMngrLvlRoleXref_ID = px.BusOrgMngrLvlRoleXref_ID

SI erreur de @@ERROR > 0
BEGIN
RAISERROR 50001 la 's'insérant dans la BAISSE DE PRIX TRANSACTION
-1
END

du Br/> de table'< de BusOrgMngrLvlRoleSectionXref COMMETTENT le
de TRANSACTION
            -- Renvoyer nouvel ID.
le @newBusOrgID

End
Else
Begin
choisissent -1 en tant qu'objet de ****** du
GO
/du _acess



USE [PMTP] de période de Businessorg_id
End


2) Bussinessorgreview :  StoredProcedure [dbo]. [BusinessOrgReviewPeriodAccess_INS] date de manuscrit : 06/30/2010 12h17 : 50 PROCÉDÉ du ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER [dbo]. [BusinessOrgReviewPeriodAccess_INS] le
AS

INSERT DANS le @intBusinessOrgID du
SELECT de dbo.BusinessOrgReviewPeriodAccess (BusinessOrg_ID, ReviewPeriod_ID, AppraisalsLocked), ReviewPeriod_ID, Br/>


please du
(int
de @intBusinessOrgID de
) d'UPCM'< de <> de code statut de 0
FROM ReviewPeriod
WHERE le 'm'a fait savoir des modifications à l'objectives
class= de

Réponse : Entires doubles à modifier du procédé stocké

Je présume que vous voulez empêcher l'insertion si le disque exact existe déjà.
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
CHANGER LE PROCÉDÉ [dbo]. [BusinessOrgReviewPeriodAccess_INS]
(
      @intBusinessOrgID      international
)
AS

INSERTION DANS dbo.BusinessOrgReviewPeriodAccess (BusinessOrg_ID, ReviewPeriod_ID, AppraisalsLocked)
CHOISIR le @intBusinessOrgID, ReviewPeriod_ID, 0
De dbo.ReviewPeriod
LÀ OÙ code statut <> « UPCM »
-- Vérifier s'il faisait déjà non existé
ET PAS EXISTE (
 CHOISIR 1 
 De dbo.BusinessOrgReviewPeriodAccess
 LÀ OÙ BusinessOrg_ID = @intBusinessOrgID
 ET =ReviewPeriod_ID de ReviewPeriod_ID
 ET AppraisalsLocked=0
)
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