;WITH #查询表头名 AS ( SELECT t0.FID,t0_l.FNAME,REPLACE(t1e.FFIELDKEY,'FSeq','') AS 'EntryName' ,FKERNELXML.query('//HeadEntity/TableName').value('(TableName)[1]','varchar(max)') as '单据头表名' ,FKERNELXML FROM T_META_OBJECTTYPE t0 INNER JOIN T_META_OBJECTTYPE_L t0_l on t0.FID = t0_l.FID AND t0_l.FLOCALEID = 2052 INNER JOIN T_BD_BARCODEITEMENTRY t1e on t1e.FBILLFORMID = t0.FID INNER JOIN T_BD_BARCODEITEM t1 on t1.FID = t1e.FID AND t1.FBARCODEFIELDKEY = 'FBILLSEQ' WHERE 1=1 --AND t0.FID = @FromId AND FISTEMPLATE = 0 AND FDEVTYPE != 2 AND FMODELTYPEID = 100 ) SELECT t0.单据头表名 ,CONCAT(t0.单据头表名,'Entry') EntryTableName ,t0.EntryName ,FKERNELXML.query('//EntryEntity[Key="FSaleOrderEntry"]/TableName').value('(TableName)[1]','varchar(max)') '单据体表名' ,FKERNELXML FROM #查询表头名 t0 SELECT TOP 1 FID FROM T_META_CONVERTRULE t0 WHERE 1 = 1 AND t0.FSOURCEFORMID = 'PLN_FORECAST' AND t0.FTARGETFORMID = 'PRD_MO' AND t0.FSTATUS = 1 ORDER BY t0.FISDEFAULT DESC,t0.FMODIFYDATE DESC SELECT t0.FID,t0_l.FNAME,t1e.FFIELDKEY ,t1.FBARCODEFIELDKEY FROM T_META_OBJECTTYPE t0 INNER JOIN T_META_OBJECTTYPE_L t0_l on t0.FID = t0_l.FID AND t0_l.FLOCALEID = 2052 INNER JOIN T_BD_BARCODEITEMENTRY t1e on t1e.FBILLFORMID = t0.FID INNER JOIN T_BD_BARCODEITEM t1 on t1.FID = t1e.FID AND t1.FBARCODEFIELDKEY = 'FQTY' WHERE 1=1 AND t0.FID = 'STK_InStock' AND FISTEMPLATE = 0 AND FDEVTYPE != 2 AND FMODELTYPEID = 100 -- 获取 SELECT t0.FID,t0_l.FNAME ,t0.FKERNELXML.query('//HeadEntity/TableName').value('(TableName)[1]','varchar(max)') as '单据头表名' ,REPLACE(t1e.FFIELDKEY,'FSeq','') AS 'SourceEntryKey' ,REPLACE(t2e.FFIELDKEY,'FSeq','') AS 'TargetEntryKey' ,t3e.FFIELDKEY FROM T_META_OBJECTTYPE t0 INNER JOIN T_META_OBJECTTYPE_L t0_l on t0.FID = t0_l.FID AND t0_l.FLOCALEID = 2052 INNER JOIN T_BD_BARCODEITEMENTRY t1e on t1e.FBILLFORMID = t0.FID INNER JOIN T_BD_BARCODEITEM t1 on t1.FID = t1e.FID AND t1.FBARCODEFIELDKEY = 'FBILLSEQ' INNER JOIN T_BD_BARCODEITEMENTRY t2e on t2e.FID = t1.FID AND t2e.FBILLFORMID = 'STK_InStock' INNER JOIN T_BD_BARCODEITEMENTRY t3e on t3e.FBILLFORMID = t2e.FBILLFORMID INNER JOIN T_BD_BARCODEITEM t3 on t3.FID = t3e.FID AND t3.FBARCODEFIELDKEY = 'FQTY' WHERE 1=1 AND t0.FID = 'PUR_ReceiveBill' AND FISTEMPLATE = 0 AND FDEVTYPE != 2 AND FMODELTYPEID = 100 SELECT t0.FID,t0_l.FNAME,t1e.FFIELDKEY ,t1.FBARCODEFIELDKEY ,REPLACE(t2e.FFIELDKEY,'FSeq','') AS 'EntryKey' ,t0.FKERNELXML.query('//QtyField[Key="FRealQty"]/PropertyName').value('(PropertyName)[1]','varchar(max)') 'QtyFieldName' ,t0.FKERNELXML FROM T_META_OBJECTTYPE t0 INNER JOIN T_META_OBJECTTYPE_L t0_l on t0.FID = t0_l.FID AND t0_l.FLOCALEID = 2052 INNER JOIN T_BD_BARCODEITEMENTRY t1e on t1e.FBILLFORMID = t0.FID INNER JOIN T_BD_BARCODEITEM t1 on t1.FID = t1e.FID AND t1.FBARCODEFIELDKEY = 'FQTY' INNER JOIN T_BD_BARCODEITEMENTRY t2e on t2e.FBILLFORMID = t0.FID INNER JOIN T_BD_BARCODEITEM t2 on t2.FID = t2e.FID AND t2.FBARCODEFIELDKEY = 'FBILLSEQ' WHERE 1 = 1 AND t0.FID = 'STK_InStock' AND t0.FISTEMPLATE = 0 AND t0.FDEVTYPE != 2 AND t0.FMODELTYPEID = 100 SELECT FID ,FKERNELXML.query('//ConvertRule/Policies/DefaultConvertPolicy/SourceEntryKey').value('(SourceEntryKey)[1]','varchar(max)') as 'SourceEntryKey' ,FKERNELXML.query('//ConvertRule/Policies/DefaultConvertPolicy/TargetEntryKey').value('(TargetEntryKey)[1]','varchar(max)') as 'TargetEntryKey' ,FKERNELXML ,t0.FSOURCEFORMID ,t0.FTARGETFORMID ,t0.FISDEFAULT FROM T_META_CONVERTRULE t0 WHERE 1 = 1 --AND t0.FSOURCEFORMID = 'PRD_MO' --AND t0.FTARGETFORMID = 'PRD_INSTOCK' AND t0.FTARGETFORMID = 'STK_InStock' AND t0.FSTATUS = 1 AND t0.FDEVTYPE = 0 ORDER BY t0.FISDEFAULT DESC,t0.FMODIFYDATE DESC -- 20241111 --select * --from T_UN_SCANDEFAULT --SELECT FBILLTYPEID,FBILLFORMID,FISDEFAULT,* --FROM T_BAS_BILLTYPE --WHERE 1=1 -- --AND FBILLFORMID = 'PRD_MO' -- AND FBILLFORMID = 'PUR_ReceiveBill' --SELECT * --INTO #seqSet --FROM ( -- {string.Join(" UNION ALL ", unionTableList)} --)tt SELECT t0.FBILLNO,t0.FID BillId ,t0e.FENTRYID BillEntryId,t0e.FSEQ --,ss.Qty FROM T_PRD_MO t0 INNER JOIN T_PRD_MOENTRY t0e on t0.FID = t0e.FID INNER JOIN T_PRD_MORPTENTRY t1e on t1e.FMOENTRYID = t0e.FENTRYID --INNER JOIN #seqSet ss on ss.BillNo = t0.FBILLNO AND ss.FSEQ = t0e.FSEQ WHERE 1 = 1 AND t0.FDOCUMENTSTATUS = 'C' SELECT t0e.FENTRYID FROM T_PUR_RECEIVE t0 INNER JOIN T_PUR_RECEIVEENTRY t0e on t0.fid = t0e.FID WHERE t0.FBILLNO = 'CGSL000026' SELECT t0e.FMOENTRYID,t0.FBILLNO,t0e.FEntryID FROM T_PRD_PACKAGEINSTOCK t0 INNER JOIN T_PRD_PACKAGEINSTOCKENTRY t0e on t0.FID = t0e.FID SELECT t0e.FENTRYID,t0e_f.FROWID,t0e_f.FPARENTROWID,t0e_f.FPARENTMATID FROM T_SAL_OUTSTOCK t0 INNER JOIN T_SAL_OUTSTOCKENTRY t0e on t0.FID = t0e.FID INNER JOIN T_SAL_OUTSTOCKENTRY_F t0e_f on t0e_f.FENTRYID = t0e.FENTRYID WHERE t0.FID = 112202 ORDER BY t0.FDATE DESC WITH #基础数据 AS ( SELECT 100125 FENTRYID,'ZZRK202411130003' BillNo ) SELECT t0.FBILLNO,t0e.FEntryID,t0e.FID,ISNULL(tt.FENTRYID,0) 'EntryId' ,t0e.FQTY,t0e.FZGSQTY,t0e.FGZLQty FROM T_PRD_PACKAGEINSTOCK t0 INNER JOIN T_PRD_PACKAGEINSTOCKENTRY t0e on t0.FID = t0e.FID INNER JOIN #基础数据 t1 on t1.BillNo = t0.FBILLNO LEFT JOIN #基础数据 tt on tt.FENTRYID = t0e.FEntryID WHERE 1 = 1 AND t0.FDOCUMENTSTATUS = 'C' --AND t0.FBILLNO = 'ZZRK202411130003'