private void submitWaybill() { logbox.AppendText("Submitting Waybill:"); PPIntegrationService.Waybill_submitWaybill_Request waybillReq = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request(); //Create a new waybill details object waybillReq.details = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request_Details(); //Inserting a new record waybillReq.s_ttype = "I"; //general details data waybillReq.details.s_accnum = accnum.Text; waybillReq.details.s_waybill = waybillno.Text; waybillReq.details.s_service = servicetextBox.Text; //origin details waybillReq.details.s_origperadd1 = origadd1.Text; waybillReq.details.s_origperadd2 = origadd2.Text; waybillReq.details.s_origperadd3 = origadd3.Text; waybillReq.details.s_origperadd4 = origadd4.Text; waybillReq.details.s_origpercell = origcell.Text; waybillReq.details.s_origpercontact = origcontact.Text; waybillReq.details.s_origperpcode = origpcode.Text; waybillReq.details.s_origperphone = origtel.Text; waybillReq.details.s_origtown = origtown.Text; waybillReq.details.s_origpers = ethgew.Text; //destination details waybillReq.details.s_destperadd1 = destadd1.Text; waybillReq.details.s_destperadd2 = destadd2.Text; waybillReq.details.s_destperadd3 = destadd3.Text; waybillReq.details.s_destperadd4 = destadd4.Text; waybillReq.details.s_destpercell = destcell.Text; waybillReq.details.s_destpercontact = destcontact.Text; waybillReq.details.s_destperpcode = destpcode.Text; waybillReq.details.s_destperphone = desttel.Text; waybillReq.details.s_desttown = desttown.Text; waybillReq.details.s_destpers = destpers.Text; //contents waybillReq.contents = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request_Contents[dataGridView2.RowCount-1]; for (int i = 0; i < dataGridView2.RowCount-1; i++) { waybillReq.contents[i] = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request_Contents(); //Populate details waybillReq.contents[i].i_item = Convert.ToString(dataGridView2.Rows[i].Cells["ItemNo"].Value); waybillReq.contents[i].i_pieces = Convert.ToString(dataGridView2.Rows[i].Cells["Pieces"].Value); waybillReq.contents[i].s_description = Convert.ToString(dataGridView2.Rows[i].Cells["Description"].Value); waybillReq.contents[i].i_dim1 = Convert.ToString(dataGridView2.Rows[i].Cells["Dim1"].Value); waybillReq.contents[i].i_dim2 = Convert.ToString(dataGridView2.Rows[i].Cells["Dim2"].Value); waybillReq.contents[i].i_dim3 = Convert.ToString(dataGridView2.Rows[i].Cells["Dim3"].Value); waybillReq.contents[i].f_actmass = Convert.ToString(dataGridView2.Rows[i].Cells["Mass"].Value); } //tracking waybillReq.tracks = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request_Tracks[dataGridView1.RowCount-1]; for (int i = 0; i < dataGridView1.RowCount-1; i++) { //Create a new tracking entry waybillReq.tracks[i] = new SoapTester.PPIntegrationService.Waybill_submitWaybill_Request_Tracks(); //Populate details waybillReq.tracks[i].i_item = Convert.ToString(dataGridView1.Rows[i].Cells["Item"].Value); waybillReq.tracks[i].i_parcelno = Convert.ToString(dataGridView1.Rows[i].Cells["ParcelNo"].Value); waybillReq.tracks[i].s_trackno = Convert.ToString(dataGridView1.Rows[i].Cells["Trackno"].Value); } try { //Make the request PPIntegrationService.Waybill_submitWaybill_Response waybillResp = this.service.Waybill_submitWaybill(this.token, waybillReq); if (waybillResp.errorcode == 0) { logbox.AppendText(" Success \n"); } else { logbox.AppendText(" Error:" + waybillResp.errormessage + "\n"); } } catch (Exception e) { logbox.AppendText(" Error: " + e.Message + "\n"); } logbox.AppendText("----------------------------------------------------------------------------------------\n"); }