AddColumns说我将一个数字与表进行比较
我对PowerApps有些陌生,我坚持使用addColumns
函数和lookup
函数来重现加入,如我在此链接上所见: syntax用于连接表。此联接将进入数据表。
我有两个SQL表,我正在尝试使用该方法加入
mt_salesattribedb_familymaterialgroupmaterials:([id],[pertialGroupId],[motitalId],[commentId],[compriond],[创建],[更新],[更新],[更新])
mt_salesattributedb_materials:([id],[材料名称],[描述],[shortdesc],[abbr],[取代],[hasnodrawing],[创建],[更新],[更新]
)完成是这样的:
SELECT
*
FROM
mT_SalesAttributeDB_FamilyMaterialGroupMaterials AS Grps
INNER JOIN
mT_SalesAttributeDB_Materials AS Mats ON Grps.MaterialID = Mats.ID
WHERE
Grps.MaterialGroupID = tblMaterialGroups_Families.Selected.ID
我认为这就是应该的样子:
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
Text(tblMaterialGroups_Families.Selected.ID) = MaterialGroupID
),
"MaterialName",
LookUp(
mT_SalesAttributeDB_Materials,
ID = mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID],
MaterialName
)
)
但是,查找内的平等,id = mt_salesattributtedb_familymaterialgroupmaterials [@materialid]
在平等的符号上给出一个错误 作为参考的一个数字
,我已经尝试过,并且正常使用的
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
Text(tblMaterialGroups_Families.Selected.ID) = MaterialGroupID
)
是我试图使用未完全发布的预览对象的问题?还是我是错误地加入他们的?
编辑
我也尝试过此操作,并且仍然有同样的错误,因为无法将数字与表进行比较
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialGroupID] = Text(tblMaterialGroups_Families.Selected.ID)
),
"SpecName",
LookUp(
mT_SalesAttributeDB_Materials,
mT_SalesAttributeDB_Materials[@ID] = mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID],
mT_SalesAttributeDB_Materials[@MaterialName]
)
)
注意:我还想提到我尝试了确切的同样的AddColumns带有一个列表框,以确保与预览中的数据表无关,而且我仍然会收到我无法将数字与表比较的错误
编辑2
i似乎越来越近。我可能会出现错误来停止,但是它填充“ specname”,但是,它只是从mt_salesattributedb_materials中获取了第一个材料名称,而不是做适当的查找,而是
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
MaterialGroupID = Text(tblMaterialGroups_Families.Selected.ID)
),
"MaterialName",
LookUp(
mT_SalesAttributeDB_Materials,
ID in mT_SalesAttributeDB_FamilyMaterialGroupMaterials.MaterialID,
MaterialName
)
)
将“ =”更改为“ in”,并且看来mt_salesattributedb_familymymymermaterialgroupmatialgroupmetialssss .materialid
与MT_SaleSattributedB_FamilyMaterialGroupMaterials [@materialId]
I'm somewhat new to PowerApps and I'm stuck at trying to reproduce a JOIN using the AddColumns
function and a LookUp
function as I saw on this link: Syntax for joining tables. This JOIN will go inside of a Data Table.
I have two SQL tables I'm trying to JOIN using that method
mT_SalesAttributeDB_FamilyMaterialGroupMaterials: ([ID], [MaterialGroupID], [MaterialID], [Comment], [Created], [Updated])
mT_SalesAttributeDB_Materials: ([ID], [MaterialName], [Description], [ShortDesc], [Abbr], [Superseded], [HasNoDrawing], [Created], [Updated])
What I'm wanting to accomplish is this:
SELECT
*
FROM
mT_SalesAttributeDB_FamilyMaterialGroupMaterials AS Grps
INNER JOIN
mT_SalesAttributeDB_Materials AS Mats ON Grps.MaterialID = Mats.ID
WHERE
Grps.MaterialGroupID = tblMaterialGroups_Families.Selected.ID
I think this is what that should look like:
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
Text(tblMaterialGroups_Families.Selected.ID) = MaterialGroupID
),
"MaterialName",
LookUp(
mT_SalesAttributeDB_Materials,
ID = mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID],
MaterialName
)
)
However, the equality inside of the LookUp, ID = mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID]
gives an error on the equal sign saying I can't compare a number to a table
As a reference, I've tried this and it works fine
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
Text(tblMaterialGroups_Families.Selected.ID) = MaterialGroupID
)
Is the problem that I'm trying to use a preview object that isn't fully released? Or am I joining them incorrectly?
EDIT
I've also tried this and still get the same error about not being able to compare a number to a Table
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialGroupID] = Text(tblMaterialGroups_Families.Selected.ID)
),
"SpecName",
LookUp(
mT_SalesAttributeDB_Materials,
mT_SalesAttributeDB_Materials[@ID] = mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID],
mT_SalesAttributeDB_Materials[@MaterialName]
)
)
NOTE: I also wanted to mention that I attempted the exact same AddColumns with a List Box to make sure it wasn't something to do with Data Tables being in preview, and I still get the error that I can't compare a Number to a Table
EDIT 2
I seem to be getting close. I can get the error to stop and it to populate "SpecName", however, it just grabs the first MaterialName from mT_SalesAttributeDB_Materials instead of doing a proper LookUp
AddColumns(
Filter(
mT_SalesAttributeDB_FamilyMaterialGroupMaterials,
MaterialGroupID = Text(tblMaterialGroups_Families.Selected.ID)
),
"MaterialName",
LookUp(
mT_SalesAttributeDB_Materials,
ID in mT_SalesAttributeDB_FamilyMaterialGroupMaterials.MaterialID,
MaterialName
)
)
I changed the "=" to an "in" and it seems that mT_SalesAttributeDB_FamilyMaterialGroupMaterials.MaterialID
is the same as mT_SalesAttributeDB_FamilyMaterialGroupMaterials[@MaterialID]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,所以我终于在Google的帮助下得到了它。我有几件事可能会使我的桌子有问题。
一旦我进行了更新,这是可以加入两个表的正确语法。您可以看到,一旦我努力工作,我什至在第二列中添加了我
的一整天,试图弄清楚这将对其他人有所帮助。
Okay, so I finally got it with some help from Google. I had a few things that were likely causing me problems with my tables.
Once I had that updated, this is the correct syntax to JOIN two tables. You can see I even added in a second Column once I got it working
Hopefully my full day wasted trying to figure that out will help someone else.