Je souhaite ajouter une colonne ErrorMessage dans mon AfterParse_CA_Events. Donc, je peux voir quelles données sont manquantes pour ma table.Composer ErrorMessage dans Tsql
CREATE TABLE [dbo].[AfterParse_CA_Events](
[EventID] [varchar](32) NOT NULL,
[MessageID] [bigint] NOT NULL,
[cdtprFunction] [varchar](32) NULL,
[CreationDate] [datetime] NULL,
[MsgDefIdr] [varchar](32) NULL,
[CFI] [varchar](50) NULL,
[MndtryVlntryEvtTp] [varchar](32) NULL,
[EventProcessingType] [varchar](4) NULL,
[EventType] [varchar](4) NULL,
[RecordDate] [date] NULL,
[EffectiveDate] [date] NULL,
[DueBillRdmDate] [date] NULL,
[OldQuantity] [varchar](32) NULL,
[PaymentDate] [date] NULL,
[LastChangeBy] [varchar](50) NULL,
[LastChangeDate] [datetime] NULL,
[EventDescription] [varchar](max) NULL,
[CUSIP] [varchar](32) NULL,
[MQ_DateTime] [datetime2](7) NULL,
[Symbol2] [varchar](32) NULL,
[AssetClass] [varchar](5) NULL,
[AssetType] [varchar](5) NULL,
[DividendType] [varchar](5) NULL,
[ExDividendDate] [date] NULL,
[LSCI_DateOfRecord] [date] NULL,
[RoundingDesc] [varchar](4) NULL,
[CompleteStatus] [varchar](4) NULL,
[ErrorMessage] [varchar](100) NULL,
CONSTRAINT [PK_AfterParse_CA_Events] PRIMARY KEY CLUSTERED
(
[EventID] ASC,
[MessageID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Voici toutes les colonnes que j'ai. Je veux vérifier LSCI_DateOfRecord, CFI, RecordDate, EffectiveDate, DueBillRdmDate, PaymentDate, CUSIP, Symbol2 et ExDividendDate. Si l'une des colonnes manque les données (null), je veux afficher le nom de la colonne dans la colonne ErrorMessage.
J'ai écrit une requête simple pour LSCI_DateOfRecord, mais je ne sais pas comment composer le message d'erreur quand il y a plusieurs colonnes de données manquantes.
si les deux LSCI_DateOfRecord et DueBillRdmDate est nulle, je veux le ErrorMessage ressembler "manque LSCI_DateOfRecord DueBillRdmDate.
mon code:
--build the ErrorMessage for AfterParse_CA_Events
declare @errorMessge varchar(1000)
select case
when ace.LSCI_DateOfRecord IS NULL then ' LSCI_RecordDate'
--when ace.DueBillRdmDate IS null then ' DueBillRdmDate'
else 'good'
end as ErrorMessage
,*
from AfterParse_CA_Events ace
Quelqu'un pourrait-il me aider.
Votre réponse est excellente. Merci beaucoup scsimon. :-) – Rachel
Pas de soucis du tout @Rachel – scsimon