Question : L'aide complexe de question de SQL 2005 a eu besoin

En premier lieu, le SQL est manipulé dynamiquement par le serveur - donc, le codage dans OÙ la clause semblera impaire à vous. Veuillez ignorer ceci, en tant que son pas l'issue. mes besoins de client du

What est un rapport de livre qui a un crédit de compensation à un débit OU au débit à un crédit. les frais du

The seront le « crédit » et sont identifiés dans mon SQL ci-dessous avec une « insertion charge » avant l'insertion sur le #Summary.  Les paiements et les ajustements seront le « débit » et peuvent être trouvés dans mon SQL au-dessous de suivre le même concept. le

What que j'ai besoin de l'aide avec fait une insertion avec l'exact les mêmes valeurs (sans deux champs, que je peux éditer après) qui compensera la « charge » ou le « débit ». le

par exemple, une charge a été écrit dans le système aujourd'hui et dans mon ensemble de données il ressemblerait à ceci :

TicketNumber : 000584
Visit : 2010-07-28 12h50 : 00.000
EntityCode : année de 01
Fiscal : période de 10
Fiscal : 01
Subsystem : GL
SourceCode : JRNENT
DeptSubAccount : 1973      0302      
Amount: 104.00
Debit/Credit : C
Description : Identification du
Proj d'entrée de Centricity :      
Filler :                 le

What que j'ai besoin est de copier cet exact le même résultat et dans mon domaine de débit/crédit je le changerais d'un « C » en « D » et je devrais également changer le champ de DeptSubAccount en valeur hardcoded que je peux ajouter dans cette logique après que j'obtienne la présente partie adressée. le

Essentially, là sont 3 composants au rapport : une charge ou un paiement ou un ajustement. Si j'ai un de ces derniers, je dois le copier et produire une autre rangée dans mon ensemble de données et renverser d'un « D » à un « C » ou d'un « C » à un « D ». J'espère que ceci semble raisonnable, sinon me demande où votre confus et moi ferons mon meilleur re-pour l'expliquer.
class= > " clair " de
> de " codeSnippet " de class= de
class= " lineNumbers " de
class= de
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
46 :
47 :
48 :
49 :
50 :
51 :
52 :
53 :
54 :
55 :
56 :
57 :
58 :
59 :
60 :
61 :
62 :
63 :
64 :
65 :
66 :
67 :
68 :
69 :
70 :
71 :
72 :
73 :
74 :
75 :
76 :
77 :
78 :
79 :
80 :
81 :
82 :
83 :
84 :
85 :
86 :
87 :
88 :
89 :
90 :
91 :
92 :
93 :
94 :
95 :
96 :
97 :
98 :
99 :
100 :
101 :
102 :
103 :
104 :
105 :
106 :
107 :
108 :
109 :
110 :
111 :
112 :
113 :
114 :
115 :
116 :
117 :
118 :
119 :
120 :
121 :
122 :
123 :
124 :
125 :
126 :
127 :
128 :
129 :
130 :
131 :
132 :
133 :
134 :
135 :
136 :
137 :
138 :
139 :
140 :
141 :
142 :
143 :
144 :
145 :
146 :
147 :
148 :
149 :
150 :
151 :
152 :
153 :
154 :
155 :
156 :
157 :
158 :
159 :
160 :
161 :
162 :
163 :
164 :
165 :
166 :
167 :
168 :
169 :
170 :
171 :
172 :
173 :
174 :
175 :
176 :
177 :
178 :
179 :
180 :
181 :
182 :
183 :
184 :
185 :
186 :
187 :
188 :
189 :
190 :
191 :
192 :
193 :
194 :
195 :
196 :
197 :
198 :
199 :
200 :
201 :
202 :
203 :
204 :
205 :
206 :
207 :
208 :
209 :
210 :
211 :
212 :
213 :
214 :
215 :
216 :
217 :
218 :
219 :
220 :
221 :
222 :
223 :
224 :
225 :
226 :
227 :
228 :
229 :
230 :
231 :
232 :
233 :
234 :
235 :
236 :
237 :
238 :
239 :
240 :
241 :
242 :
243 :
244 :
245 :
246 :
247 :
248 :
249 :
250 :
251 :
252 :
253 :
>SET " de l'id= " codeSnippet854013 de
= ISNULL (« 07/01/2010 », « 1/1/1900 » de b.entry) ET <> 0 de b.Status
	ET b.entry < DATEADD (JOUR, 1, ISNULL (« 07/31/2010 », « 1/1/3000 »)
	)	
	ET  --Filtre sur le service
	(
	(la NULLE N'EST PAS NULLE ET pv.FacilityID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la compagnie
	(
	(la NULLE N'EST PAS NULLE ET pv.CompanyID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la classe financière
	(
	(la NULLE N'EST PAS NULLE ET pv.FinancialClassMID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)

GROUPE PRÈS
	pv.TicketNumber,
	picovolte. Visite,
	Doc. Registre,
	fac. Registre,
	aileron. Registre

AYANT
	ADDITIONNER le <> (pvp.TotalFee) 0
     
-- Insérer les paiements 

INSÉRER DANS #Summary

CHOISIR
	pv.TicketNumber,
	picovolte. Visite,
	« 01 » COMME EntityCode,
	DROITE (ANNÉE (DATEADD (m, - (@otherlong - 1), b.Entry)) , 2) COMME [exercice budgétaire],
	GAUCHE (CONVERTI (VARCHAR, DATEADD (m, - (@otherlong - 1), b.Entry), 101), 2) COMME [période fiscale],
	« GL » COMME [sous-système],
	« JRNENT » COMME [code source],	
	GAUCHE (ISNULL (pymt. Registre, '') + l'ESPACE (20), 20) COMME [DeptSubAccount], 
	GAUCHE (CONVERTI (varchar, t.amount) + l'ESPACE (22), 22) COMME [quantité],
	« D » COMME [débit/crédit],
	« Entrée de Centricity » + l'ESPACE (34) COMME [description],
	L'ESPACE (6) COMME [identification de Proj],
	L'ESPACE (16) COMME [remplisseur]

DE
	PatientVisit picovolte 
	INTÉRIEUR JOINDRE les élém. de DoctorFacility SUR pv.CompanyId = comp.DoctorFacilityId 
	INTÉRIEUR JOINDRE le fac de DoctorFacility SUR pv.FacilityId = fac.DoctorFacilityId 
	INTÉRIEUR JOINDRE le Doc. de DoctorFacility SUR pv.DoctorId = doc.DoctorFacilityId 
	EXTERNES GAUCHES JOIGNENT l'aileron de Medlists SUR pv.FinancialClassMId = fin.MedListsId 
	INTÉRIEUR JOINDRE PatientProfile pp SUR pv.PatientProfileId = pp.PatientProfileId
	INTÉRIEUR JOINDRE le VT de VisitTransactions SUR pv.PatientVisitId = vt.PatientVisitid 
	INTÉRIEUR JOINDRE PaymentMethod P.M. SUR vt.PaymentMethodId = pm.PaymentMethodId 
	INTÉRIEUR JOINDRE le groupe b SUR pm.BatchID = b.BatchID 
	INTÉRIEUR JOINDRE les transactions t SUR vt.VisitTransactionsId = t.VisitTransactionsId 
	EXTERNES GAUCHES JOIGNENT MedLists à SUR t.ActionTypeMId = at.MedListsId 
	EXTERNES GAUCHES JOIGNENT (choisir * à partir des medlists où tablename = « PaymentTypes ") le pymt SUR t.ActionTypeMId = pymt.MedlistsId 
LÀ OÙ 
	t.Action = <> 0 de « P » ET de b.Status
	ET PAS EXISTE (CHOISIR 1 À PARTIR de PaymentMethod pm1 OÙ vt.PaymentMethodId = pm1.PaymentMethodId ET pm1.InsuranceTransfer = 1)
	ET >= ISNULL (« 07/01/2010 », « 1/1/1900 » de b.entry) 
	ET b.entry < DATEADD (JOUR, 1, ISNULL (« 07/31/2010 », « 1/1/3000 »)
	)	
	ET  --Filtre sur le service
	(
	(la NULLE N'EST PAS NULLE ET pv.FacilityID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la compagnie
	(
	(la NULLE N'EST PAS NULLE ET pv.CompanyID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la classe financière
	(
	(la NULLE N'EST PAS NULLE ET pv.FinancialClassMID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)

GROUPE PRÈS
	pv.TicketNumber,
	b.Entry,
	t.Amount,
	picovolte. Visite,
	Doc. Registre,
	fac. Registre,
	aileron. Registre,
	pymt. Registre
	
AYANT
	<> 0 de t.amount

-- Insérer les ajustements

INSÉRER DANS #Summary

CHOISIR
	pv.TicketNumber,
	picovolte. Visite,
	« 01 » COMME EntityCode,
	DROITE (ANNÉE (DATEADD (m, - (@otherlong - 1), b.Entry)) , 2) COMME [exercice budgétaire],
	GAUCHE (CONVERTI (VARCHAR, DATEADD (m, - (@otherlong - 1), b.Entry), 101), 2) COMME [période fiscale],
	« GL » COMME [sous-système],
	« JRNENT » COMME [code source],
	GAUCHE (ISNULL (ajustement. Registre, '') + l'ESPACE (20), 20) COMME [DeptSubAccount],
	GAUCHE (CONVERTI (varchar, t.amount) + l'ESPACE (22), 22) COMME [quantité],
	« D » COMME [débit/crédit],
	« Entrée de Centricity » + l'ESPACE (34) COMME [description],
	L'ESPACE (6) COMME [identification de Proj],
	L'ESPACE (16) COMME [remplisseur]

DE
	PatientVisit picovolte 
	INTÉRIEUR JOINDRE les élém. de DoctorFacility SUR pv.CompanyId = comp.DoctorFacilityId 
	INTÉRIEUR JOINDRE le fac de DoctorFacility SUR pv.FacilityId = fac.DoctorFacilityId 
	INTÉRIEUR JOINDRE le Doc. de DoctorFacility SUR pv.DoctorId = doc.DoctorFacilityId 
	EXTERNES GAUCHES JOIGNENT l'aileron de Medlists SUR pv.FinancialClassMId = fin.MedListsId 
	INTÉRIEUR JOINDRE PatientProfile pp SUR pv.PatientProfileId = pp.PatientProfileId
	INTÉRIEUR JOINDRE le VT de VisitTransactions SUR pv.PatientVisitId = vt.PatientVisitid 
	INTÉRIEUR JOINDRE PaymentMethod P.M. SUR vt.PaymentMethodId = pm.PaymentMethodId 
	INTÉRIEUR JOINDRE le groupe b SUR pm.BatchID = b.BatchID 
	INTÉRIEUR JOINDRE les transactions t SUR vt.VisitTransactionsId = t.VisitTransactionsId 
	EXTERNES GAUCHES JOIGNENT MedLists à SUR t.ActionTypeMId = at.MedListsId 
	EXTERNES GAUCHES JOIGNENT (choisir * à partir des medlists où tablename = « AdjustmentTypes ") l'ajustement SUR t.ActionTypeMId = adj.MedlistsId 

LÀ OÙ 
	t.Action = <> 0 de « A » ET de b.Status
	ET PAS EXISTE (CHOISIR 1 À PARTIR de PaymentMethod pm1 OÙ vt.PaymentMethodId = pm1.PaymentMethodId ET pm1.InsuranceTransfer = 1)
	ET >= ISNULL (« 07/01/2010 », « 1/1/1900 » de b.entry) 
	ET b.entry < DATEADD (JOUR, 1, ISNULL (« 07/31/2010 », « 1/1/3000 »)
	)	
	ET  --Filtre sur le service
	(
	(la NULLE N'EST PAS NULLE ET pv.FacilityID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la compagnie
	(
	(la NULLE N'EST PAS NULLE ET pv.CompanyID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)
	ET  --Filtre sur la classe financière
	(
	(la NULLE N'EST PAS NULLE ET pv.FinancialClassMID DEDANS (la NULLE)) OU
	(LA NULLE EST NULLE)
	)

GROUPE PRÈS
	pv.TicketNumber,
	b.Entry,
	t.Amount,
	picovolte. Visite,
	Doc. Registre,
	fac. Registre,
	aileron. Registre,
	ajustement. Registre
	
AYANT
	<> 0 de t.amount
		
-- Grouper maintenant les articles ensemble pour un total

CHOISIR 
	[TicketNumber],
	[Visite],
	[EntityCode],
  	[Exercice budgétaire],
  	[Période fiscale],
  	[Sous-système],
  	[Code source],
	[DeptSubAccount],
  	[Quantité],
  	[Débit/crédit],
  	[Description],
  	[Identification de Proj],
	[Remplisseur] 
      
DE 
	#Summary 
	
ORDRE PRÈS 	
	[TicketNumber] 	

TABLE DE BAISSE #Summary
class= de

Réponse : L'aide complexe de question de SQL 2005 a eu besoin

Désolé.

La première course, et la réexécution, le CHOISI et l'ajustent pour assortir de ce que vous avez besoin -- enlever les colonnes, changer des certains valeurs, etc.

Alors vous pouvez employer que CHOISI pour insérer les transactions renversées dans la table #summary.

INSERTION DANS #SUMMARY
CHOISI
      [TicketNumber],
      [Visite],
      [EntityCode],
        [Exercice budgétaire],
        [Période fiscale],
        [Sous-système],
        [Code source],
        [DeptSubAccount], -- les besoins changés ? !
        [Quantité],
    CAS QUAND [débit/crédit] = EXTRÉMITÉ D'AUTRE de « C » de « D » de « C » PUIS,
        [Description],
        [Identification de Proj]
De #Summary
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