वास्तव में सुनिश्चित नहीं हूं कि मैं समारोह छोड़ दिया परिणाम है कि मैं एक क्रॉस से प्राप्त शामिल हो सकते हैं लागू होते हैं:वाम में शामिल होने के एक क्रॉस के साथ एक प्रश्न लागू
select
iv.invoiceno
,w.warehouse
,iv.invoicedate
,iv.invoicedesc
,iv.status
,iv.billingstart as [BillingFrom]
,iv.billingend as [BillingTo]
,CAST((iv.invoicesubtotal) as NUMERIC(38,2))as [Sub-Total]
,CAST((((iv.invoicesubtotal+iv.invoicetax)-iv.invoicetotal)) as NUMERIC(38,2)) as [Discount]
,CAST((iv.invoicetax) as NUMERIC(38,2)) as [SalesTax]
,CAST((iv.invoicetotal) as NUMERIC(38,2)) as [Total]
,d.deal
,d.dealno
,ivt.orderno
,ivt.rectype
,ivt.rectypedisplay
,RTRIM(ivt.masterno) as [ICode]
,ivt.description as [ICodeDesc]
,ivt.fromdate as [From]
,ivt.todate as [To]
,CAST((ivt.days) as NUMERIC(38,2)) as [days]
,CAST(ivt.qty as NUMERIC(38,0)) as [qty]
,CAST((ivt.cost) as NUMERIC(38,2)) as [UnitCost]
,CAST((ivt.rate) as NUMERIC(38,2)) as [rate]
,CAST((ivt.daysinwk)as NUMERIC(38,2)) as [D/W]
,CAST((ivt.discountamt)as NUMERIC(38,2)) as [Discount]
,CAST((ivt.extended)as NUMERIC(38,2)) as [extended]
,(CASE WHEN ivt.taxable='T' then 'YES' else 'NO' END)as [Taxable]
,ivt.category
,(CASE WHEN (ivt.cost > 0 and ivt.rectype='R') THEN CAST((ivt.revenuebase) as NUMERIC (38,2)) ELSE 0 END) as [subrevenue] from invoice iv
inner join deal d on d.dealid=iv.dealid
inner join invoiceitemview ivt on iv.invoiceid=ivt.invoiceid and iv.invoiceno=ivt.invoiceno
inner join warehouse w on w.locationid=iv.locationid and w.inactive<>'T'
left join category c on c.categoryid=ivt.categoryid
left join ordernoteview n on ivt.orderid=n.orderid and n.billing ='T' where iv.locationid='00009V5H' and iv.invoiceno='H513369' and iv.status in ('CLOSED', 'PROCESSED') and iv.nocharge<>'T' order by iv.invoiceno, iv.invoicedate,c.category,ivt.masterno
मैं इस क्वेरी के साथ शामिल होने के एक छोड़ दिया जोड़ना चाहते थे:
select tot.gldate, tot.glno, tot.glacctdesc,
tot.debit,tot.credit,tot.glaccountid from invoice ivt cross apply dbo.funcglforinvoice(ivt.invoiceid, null, null) as tot where ivt.invoiceno='H513369'
लेकिन जब मैं ऐसा करता हूं तो यह मुझे और अधिक रिकॉर्ड देता है तो वहां होना चाहिए।
यह थोड़ी देर के लिए निष्पादित किया गया है। असल में आंतरिक क्रॉस लागू क्वेरी 204 आइटम उत्पन्न करती है और मैं चाहता था कि मुख्य प्रश्न से वस्तुओं के साथ जुड़ना पड़े; लेकिन मैं कुछ गलत कर रहा हूं यह सुनिश्चित नहीं करता कि वास्तव में क्या है। मदद की सराहना की जाएगी।
क्या आपके पास कोई WHERE क्लॉज या कुछ है ताकि आप चालान तालिका से प्रत्येक रिकॉर्ड वापस नहीं कर रहे हैं? और मैं समझता हूं कि आपने उप-चयन को अलग से चलाया है, इसलिए आप जानते हैं कि यह इस पूरे टुकड़े के लिए 204 से अधिक रिकॉर्ड नहीं लौटा रहा है: (iii.invoiceid, tot.gldate, tot.glno, tot.glacctdesc, tot.debit, tot चुनें। क्रेडिट, ग्लोकाउंटिड इनवॉइस iii क्रॉस dbo.funcglforinvoice (iii.invoiceid, null, null) को लागू करें) – criticalfix