0
데이터베이스에있는 사용자 지정 DAC 레코드를 추가하려고했습니다. 하지만 지금은 효과가 있습니다. 다음은 내가 성취하려는 방법입니다.사용자 지정 테이블 레코드 추가
public class SquarePOSTransactionInquiry : PXGraph<SquarePOSTransactionInquiry>
{
public PXSave<MasterTable> Save;
public PXCancel<MasterTable> Cancel;
public PXFilter<MasterTable> MasterView;
public PXSelect<INSquarePOSTransaction> INSquarePOSTransactions;
public PXAction<MasterTable> calc;
[PXUIField(DisplayName = "Sync Square Transactions")]
[PXProcessButton()]
protected virtual IEnumerable Calc(PXAdapter adapter)
{
PXLongOperation.StartOperation(this,() =>
{
using (var scope = new PXTransactionScope())
{
INSquarePOSTransaction trans = new INSquarePOSTransaction();
trans.TransacationCD = "new";
trans.Description = "Another new";
var test = this.INSquarePOSTransactions.Insert(trans);
this.INSquarePOSTransactions.Cache.IsDirty = true;
//this.INSquarePOSTransactions.Update(trans);
this.Actions.PressSave();
scope.Complete();
}
});
return adapter.Get();
}
public SquarePOSTransactionInquiry()
{
}
[Serializable]
public class MasterTable : IBqlTable
{
}
}
캐시 IsDirty 속성을 false로 설정하려고했지만 너무 도움이되지 않았습니다. 그러나 이상한 부분은 DAC가 작동 중임을 업데이트하는 것입니다. 다른 페이지에서 다른 비즈니스 로직 코드를 살펴 보았습니다. 위와 같은 시도를 한 것처럼 보입니다. 제가 누락 된 부분을 말씀해 주시겠습니까?
감사합니다.
감사합니다. 그것은 효과가 있었다. 이것이 지금 코드를 작성한 방법입니다. 'INSquarePOSTransaction trans = new INSquarePOSTransaction(); trans.TransacationCD = "new new"; trans.Description = "또 다른 새로운 기능"; var graph = PXGraph.CreateInstance(); var res = graph.INSquarePOSTransactions.Insert (trans); graph.Actions.PressSave(); scope.Complete(); graph.INSquarePOSTransactions.View.RequestRefresh(); ' 그러나 데이터베이스 테이블에 새 레코드를 포함하지만 이상한 부분이있다 : https://www.screencast.com/t/aTaMfa3Ta4a Acumatica 페이지 : 은 https ://www.screencast.com/t/cd0sh1b6ZV –