This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
Dear Team,
I am trying to convert D365 X++ query to SQL query and getting error Error converting data type varchar to bigint.
D365 X++ query :
SELECT FIRSTFAST FORUPDATE * FROM InventTransOrigin(InventTransOrigin) USING INDEX InventTransIdIdx JOIN FORUPDATE * FROM InventTrans(InventTrans) ON InventTransOrigin.RecId = InventTrans.InventTransOrigin JOIN FORUPDATE * FROM InventDim(InventDim) ON InventTrans.inventDimId = InventDim.inventDimId JOIN FORUPDATE * FROM InventTableModule(InventTableModule) ON InventTrans.ItemId = InventTableModule.ItemId AND ((ModuleType = 0)) OUTER JOIN FORUPDATE InventTransId FROM InventTransOrigin(Ref_InventTransOrigin_MarkingRefInventTransOrigin) ON InventTrans.MarkingRefInventTransOrigin = InventTransOrigin.RecId OUTER JOIN FORUPDATE InventTransId FROM InventTransOrigin(Ref_InventTransOrigin_returnInventTransOrigin) ON InventTrans.ReturnInventTransOrigin = InventTransOrigin.RecId OUTER JOIN FORUPDATE InventTransId, InventTransId FROM InventTransOrigin(Ref_InventTrans_InventTransOrigin_InventTransOrigin) ON InventTrans.InventTransOrigin = InventTransOrigin.RecId
SQL Query:
select inventtransorigin.itemid,inventtransorigin.referenceid,inventtransorigin.referencecategory,inventbatchid,qty,unitid,costamountphysical,costamountposted
from inventtransorigin
join inventtrans on inventtransorigin.recid = inventtrans.inventtransorigin
join inventdim on inventtrans.inventdimid = inventdim.inventdimid
join inventtablemodule on inventtrans.itemid = inventtablemodule.itemid and ((moduletype = 0))
Left join inventtransorigin io1 on io1.inventtransid = inventtransorigin.recid
Left join inventtransorigin io2 on io2.inventtransid = inventtransorigin.recid
Left join inventtransorigin io3 on io3.inventtransid = inventtransorigin.recid
where inventtransorigin.itemid like '100465' and inventbatchid='hdh'
Please help me if anything I am doing wrong.
Regards
Solved! Go to Solution.
You're trying to compare or join a varchar (string) field with a bigint (numeric) field :
LEFT JOIN inventtransorigin io1 ON io1.inventtransid = inventtransorigin.recid
Here is the full query :
SELECT
inventtransorigin.itemid,
inventtransorigin.referenceid,
inventtransorigin.referencecategory,
inventdim.inventbatchid,
inventtrans.qty,
inventtrans.unitid,
inventtrans.costamountphysical,
inventtrans.costamountposted
FROM inventtransorigin
JOIN inventtrans
ON inventtransorigin.recid = inventtrans.inventtransorigin
JOIN inventdim
ON inventtrans.inventdimid = inventdim.inventdimid
JOIN inventtablemodule
ON inventtrans.itemid = inventtablemodule.itemid
AND inventtablemodule.moduletype = 0
LEFT JOIN inventtransorigin io1
ON inventtrans.markingrefinventtransorigin = io1.recid
LEFT JOIN inventtransorigin io2
ON inventtrans.returninventtransorigin = io2.recid
LEFT JOIN inventtransorigin io3
ON inventtrans.inventtransorigin = io3.recid
WHERE
inventtransorigin.itemid = '100465'
AND inventdim.inventbatchid = 'hdh'
Thanks for your support
You're trying to compare or join a varchar (string) field with a bigint (numeric) field :
LEFT JOIN inventtransorigin io1 ON io1.inventtransid = inventtransorigin.recid
Here is the full query :
SELECT
inventtransorigin.itemid,
inventtransorigin.referenceid,
inventtransorigin.referencecategory,
inventdim.inventbatchid,
inventtrans.qty,
inventtrans.unitid,
inventtrans.costamountphysical,
inventtrans.costamountposted
FROM inventtransorigin
JOIN inventtrans
ON inventtransorigin.recid = inventtrans.inventtransorigin
JOIN inventdim
ON inventtrans.inventdimid = inventdim.inventdimid
JOIN inventtablemodule
ON inventtrans.itemid = inventtablemodule.itemid
AND inventtablemodule.moduletype = 0
LEFT JOIN inventtransorigin io1
ON inventtrans.markingrefinventtransorigin = io1.recid
LEFT JOIN inventtransorigin io2
ON inventtrans.returninventtransorigin = io2.recid
LEFT JOIN inventtransorigin io3
ON inventtrans.inventtransorigin = io3.recid
WHERE
inventtransorigin.itemid = '100465'
AND inventdim.inventbatchid = 'hdh'
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 3 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |