データテーブルに正しいデータを入力する際に問題が発生しました。
フォームで使用しているデータテーブルがあります。これはuserConfigProfilesと呼ばれます。2つのFK列groupId(これはUserGroupInfoに結合します)とcorpProfileId(これは私が作成したテーブルに結合します)があります。userConfigProfilesのそのデータは別のフォームから入力され、現在適切に入力されています。
問題は、現在のユーザーが含まれているUserGroupsに基づいて、userConfigProfilesの行のサブセットを表示するSalesTableフォームにドロップダウンを作成する必要があることです。
以下のコードをSalesTableフォームのuserConfigProfilesテーブルに追加して、これを実行しようとしました。
public void init()
{
userConfigProfiles.data(userConfigProfiles::find());
super();
}
次に、このfindメソッドをテーブル自体に追加しました。
static public userConfigProfiles find()
{
userConfigProfiles userProfile;
UserGroupList userGroupList;
str 8 u = curUserId();
select *
from userProfile
order by userProfile.bdcProfileId
join userGroupList
where userProfile.groupId == userGroupList.groupId
&& userGroupList.userId == u;
return userProfile;
}
ただし、findメソッドが呼び出されて正しいデータが返されたとしても、フォームのドロップダウンリストに表示されるデータには影響がないようです。
ドロップダウンリストは、userConfigProfilesのデータソースとcorpProfileIdのDataFieldを持つStringEditフィールドです。
私の問題を解決する方法はいくつかあると確信しており、コードをすべて削除してドロップダウンボックスをまったく別の方法で実行することを意味する場合でも、それらのいずれにもオープンです。