private void DoShipping(bool isDoShipping) { wsINP.IwsINPClient client = new wsINP.IwsINPClient(); try { baseForm.SetCursor(); baseForm.ValidateData(this); List<tinpshippingdtlctn> lstshippingdtlctn = new List<tinpshippingdtlctn>(); foreach (string key in ht.Keys) { DataTable dt = ht[key] as DataTable; int ctnqty = 0; foreach (DataRow row in dt.Rows) { if (row["ck"].ToString().Equals("Y")) { tinpshippingdtlctn shippingdtlctn = new tinpshippingdtlctn(); shippingdtlctn.shippingsysid = ShipingSysId; shippingdtlctn.customerid = row["customerid"].ToString(); shippingdtlctn.custorderno = key; shippingdtlctn.cartonno = row["cartonno"].ToString(); shippingdtlctn.pairqty = Convert.ToInt16(row["pairqty"].ToString()); lstshippingdtlctn.Add(shippingdtlctn); ctnqty++; } } if (ctnqty > getPlanQty(key) || (isDoShipping && ctnqty != getPlanQty(key))) { throw new Exception(UtilCulture.GetString("Msg.R01024")); } } tinpshipping shipping = new tinpshipping(); shipping.shippingsysid = ShipingSysId; shipping.packingboxno = this.txtPackingBoxNo.Text; shipping.shippingno = this.txtShipNo.Text; shipping.containerno = this.txtContainerNo.Text; shipping.blno = this.txtBlNo.Text; //shipping.contractno = this.txtContractNo.Text; if (this.cmbLoadingType.SelectedItem != null) { shipping.loadingtype = ((ValueInfo)this.cmbLoadingType.SelectedItem).ValueField; } tinpshippingplan shippingplan = new tinpshippingplan(); shippingplan.shippingplanno = ((ValueInfo)this.cmbShippingPlanNo.SelectedItem).DisplayField; shippingplan.loadingdate = Convert.ToDateTime(this.dtLoadingDt.Value); shippingplan.boxqty = this.txtBoxQty.Text; shippingplan.deliverybill = this.txtBlNo.Text; shippingplan.inshipno = this.txtInShipNo.Text; shippingplan.commissionedqty = Convert.ToInt16(this.numCommissionedQty.Value); shippingplan.commissionedvolume = this.numCommissionedVolume.Value; shippingplan.commissionedweight = this.numCommissionedWeight.Value; shippingplan.startport = this.txtStartPort.Text; shippingplan.destinationport = this.txtDestinationPort.Text; shippingplan.unloadport = this.txtUnloadPort.Text; shippingplan.voyage = this.txtVoyage.Text; client.DoShipping(baseForm.CurrentContextInfo, shipping, lstshippingdtlctn.ToArray<tinpshippingdtlctn>(),shippingplan, isDoShipping); baseForm.CreateMessageBox(Public_MessageBox.Information, MessageBoxButtons.OK, null, UtilCulture.GetString("Msg.R00028")); this.Close(); } catch (Exception ex) { baseForm.CreateMessageBox(Public_MessageBox.Error, MessageBoxButtons.OK, null, ex.Message); } finally { baseForm.ResetCursor(); baseForm.CloseWCF(client); } }