/// <summary> /// 根据传入的单号信息删除送货单 /// </summary> /// <param name="delivery_no">送货单号</param> public void DeleteFilArrival(string delivery_no) { try { //20170508 add by liwei1 for P001-161209002 ---begin--- //检查该送货单是否已生成到货单,若已生成到货单则不能审核 if (GetCountNum(delivery_no) > 0) { IInfoEncodeContainer infoEnCode = GetService <IInfoEncodeContainer>(); throw new BusinessRuleException(infoEnCode.GetMessage("A111446"));//该送货单已生成到货单,不能删除! } //20170508 add by liwei1 for P001-161209002 ---end--- using (ITransactionService transActionService = GetService <ITransactionService>()) { //删除送货单 QueryNode queryNode = OOQL.Delete("FIL_ARRIVAL") .Where((OOQL.CreateProperty("FIL_ARRIVAL.DOC_NO") == OOQL.CreateConstants(delivery_no))); GetService <IQueryService>().ExecuteNoQuery(queryNode); //删除送货单单身 queryNode = OOQL.Delete("FIL_ARRIVAL.FIL_ARRIVAL_D") .Where(OOQL.CreateProperty("FIL_ARRIVAL.FIL_ARRIVAL_D.DOC_NO") == OOQL.CreateConstants(delivery_no)); GetService <IQueryService>().ExecuteNoQuery(queryNode); transActionService.Complete(); } } catch (Exception) { throw; } }
/// <summary> /// 先删除BCLine,后面再重新生成 /// </summary> /// <param name="qrySrv"></param> /// <param name="tmpIssueReceiptD"></param> private void DeleteBCLine(IQueryService qrySrv, IDataEntityType tmpIssueReceiptD) { QueryNode deleteNode = OOQL.Delete("BC_LINE") .Where(OOQL.CreateProperty("SOURCE_ID.ROid").In( OOQL.Select(OOQL.CreateProperty("ISSUE_RECEIPT_D.ISSUE_RECEIPT_D_ID")) .From("ISSUE_RECEIPT", "ISSUE_RECEIPT") .InnerJoin(tmpIssueReceiptD.Name, "TMP") .On(OOQL.CreateProperty("ISSUE_RECEIPT.DOC_NO") == OOQL.CreateProperty("TMP.DOC_NO")) .InnerJoin("ISSUE_RECEIPT.ISSUE_RECEIPT_D", "ISSUE_RECEIPT_D") .On(OOQL.CreateProperty("ISSUE_RECEIPT.ISSUE_RECEIPT_ID") == OOQL.CreateProperty("ISSUE_RECEIPT_D.ISSUE_RECEIPT_ID")) )); qrySrv.ExecuteNoQuery(deleteNode); }
/// <summary> /// 先删除BCLine,后面再重新生成 /// </summary> /// <param name="qrySrv"></param> /// <param name="tmpIssueReceiptD"></param> private void DeleteBCLine(IQueryService qrySrv, IDataEntityType tempEntityD) { QueryNode deleteNode = OOQL.Delete("BC_LINE") .Where(OOQL.CreateProperty("SOURCE_ID.ROid").In( OOQL.Select(OOQL.CreateProperty("SALES_ISSUE_D.SALES_ISSUE_D_ID")) .From("SALES_ISSUE", "SALES_ISSUE") .InnerJoin(tempEntityD.Name, "TMP") .On(OOQL.CreateProperty("SALES_ISSUE.DOC_NO") == OOQL.CreateProperty("TMP.doc_no")) .InnerJoin("SALES_ISSUE.SALES_ISSUE_D", "SALES_ISSUE_D") .On(OOQL.CreateProperty("SALES_ISSUE.SALES_ISSUE_ID") == OOQL.CreateProperty("SALES_ISSUE_D.SALES_ISSUE_ID")) )); qrySrv.ExecuteNoQuery(deleteNode); }
/// <summary> /// 删除条码交易明细 /// </summary> private void DeleteBcLine() { QueryNode deleteNode = OOQL.Delete("BC_LINE") .Where((OOQL.CreateProperty("SOURCE_ID.RTK") == OOQL.CreateConstants("TRANSACTION_DOC.TRANSACTION_DOC_D")) & OOQL.CreateProperty("SOURCE_ID.ROid") .In(OOQL.Select(OOQL.CreateProperty("TRANSACTION_DOC_D.TRANSACTION_DOC_D_ID")) .From("TRANSACTION_DOC.TRANSACTION_DOC_D", "TRANSACTION_DOC_D") .InnerJoin("TRANSACTION_DOC", "TRANSACTION_DOC") .On(OOQL.CreateProperty("TRANSACTION_DOC.TRANSACTION_DOC_ID") == OOQL.CreateProperty("TRANSACTION_DOC_D.TRANSACTION_DOC_ID")) .InnerJoin(_TEMP_SCAN_DETAIL.Name, "TEMP_SCAN_DETAIL") .On((OOQL.CreateProperty("TEMP_SCAN_DETAIL.doc_no") == OOQL.CreateProperty("TRANSACTION_DOC.DOC_NO")) & (OOQL.CreateProperty("TEMP_SCAN_DETAIL.seq") == OOQL.CreateProperty("TRANSACTION_DOC_D.SequenceNumber"))) )); _querySrv.ExecuteNoQuery(deleteNode); }