タブを開き、アップロードしたファイルの外部URLをタブに挿入し、ユーザーが[ファイル]ボタンをクリックしてクリックしたときと同じようにそのURLに移動するアクションを作成しようとしていますファイルのタイトルの1つであり、ファイルの内容でタブを開きました。UploadFileWithIDSelectorオブジェクトから外部URLを取得できない
ここでは、外部リンクを取得するために使用したコードを示します。私はFILEIDは、この例ではInventoryItemテーブルの拡張列として保存されていることに注意してください:
PXView item = Base.Views["Item"];
InventoryItem item = PXSelect<InventoryItem, Where<InventoryItem.inventoryCD,
Equal<Current<InventoryItem.inventoryCD>>>>
.Select(Base, Base.Views["Item"].Cache.Current);
InventoryItemExt itemext = item.Cache.GetExtension<InventoryItemExt>(item);
UploadFileWithIDSelector fileInfo = PXSelect<UploadFileWithIDSelector,
Where<UploadFileWithIDSelector.fileID,
Equal<Current<PX.Objects.IN.InventoryItemExt.usrDefaultSpecID>>>
.Select(Base, itemext.UsrDefaultSpecID);
私はその後のExternalLinkを使用してページを開くには、次のコードを実行しよう:
throw new PXRedirectToUrlException(fileInfo.ExternalLink, "");
これにより、次のエラーが発生します。
Object reference not set to an instance of an object.
DACは外部リンクを直接取得できませんか?これを修正して外部リンクを取得する方法はありますか?アップロードされたファイルの外部リンクを取得する別の方法がありますか?
おかげ
あなたの問題に関連していない可能性がありますが、現在の<>ではなくRequired <>を使用しているかのように、BQLクエリに引数を渡しています。それがうまくいくならば、あなたの現在のレコードが同じものであることを意味します。さらに、インベントリ項目を取得するための最初のクエリには、Required <>がインベントリCDを要求し、完全なオブジェクトは期待しないため、欠陥があります。 'InventoryItem item = Base.Item.Current;'と 'InventoryItemExt itemext = PXCache .GetExtension (item);あなたはあなたが望むものを得ることができます。 '、または引数のない最後の行だけを使用します。 –
Philippe