Commit 62f07ed4 by emsys

Reworked Cutting Die Order Entry

Server now sends back the entire order, added 3 fields QB_ORDER_NUM, QB_ESTIMATE_ID, and IN_QB
parent 15329f55
...@@ -2,8 +2,8 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -2,8 +2,8 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
Width = 956 Width = 956
Height = 728 Height = 728
object WebLabel2: TWebLabel object WebLabel2: TWebLabel
Left = 26 Left = 24
Top = 72 Top = 71
Width = 52 Width = 52
Height = 15 Height = 15
Caption = 'Company' Caption = 'Company'
...@@ -51,20 +51,21 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -51,20 +51,21 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'SHORT_NAME' DataField = 'SHORT_NAME'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtInQuickBooks: TWebDBEdit object edtQBOrderNum: TWebDBEdit
Left = 24 Left = 151
Top = 152 Top = 149
Width = 121 Width = 121
Height = 23 Height = 23
AutoCompletion = acNope AutoCompletion = acNope
AutoSize = True AutoSize = True
ChildOrder = 79 ChildOrder = 79
ElementID = 'edtinquickbooks' ElementID = 'edtqbordernum'
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataSource = WebDataSource1 DataField = 'QB_ORDER_NUM'
DataSource = wdsOrder
end end
object dtpOrderDate: TWebDateTimePicker object dtpOrderDate: TWebDateTimePicker
Left = 22 Left = 22
...@@ -116,7 +117,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -116,7 +117,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_ship_via' DataField = 'staff_fields_ship_via'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtQuantity: TWebDBEdit object edtQuantity: TWebDBEdit
Left = 24 Left = 24
...@@ -130,7 +131,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -130,7 +131,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_quantity' DataField = 'staff_fields_quantity'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtPrice: TWebDBEdit object edtPrice: TWebDBEdit
Left = 24 Left = 24
...@@ -142,7 +143,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -142,7 +143,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_price' DataField = 'staff_fields_price'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtInvoiceTo: TWebDBEdit object edtInvoiceTo: TWebDBEdit
Left = 26 Left = 26
...@@ -155,7 +156,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -155,7 +156,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_invoice_to' DataField = 'staff_fields_invoice_to'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object wdbcbShipTo: TWebDBComboBox object wdbcbShipTo: TWebDBComboBox
Left = 26 Left = 26
...@@ -167,7 +168,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -167,7 +168,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
ItemIndex = -1 ItemIndex = -1
DataField = 'staff_fields_ship_to' DataField = 'staff_fields_ship_to'
DataSource = WebDataSource1 DataSource = wdsOrder
ListField = 'ADDRESS' ListField = 'ADDRESS'
ListSource = wdsShipTo ListSource = wdsShipTo
end end
...@@ -182,7 +183,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -182,7 +183,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_po_number' DataField = 'staff_fields_po_number'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtJobName: TWebDBEdit object edtJobName: TWebDBEdit
Left = 26 Left = 26
...@@ -195,7 +196,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -195,7 +196,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'staff_fields_job_name' DataField = 'staff_fields_job_name'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object edtSpecialInstructions: TWebDBEdit object edtSpecialInstructions: TWebDBEdit
Left = 835 Left = 835
...@@ -208,7 +209,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -208,7 +209,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'general_special_instructions' DataField = 'general_special_instructions'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object btnSave: TWebButton object btnSave: TWebButton
Left = 526 Left = 526
...@@ -235,7 +236,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -235,7 +236,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
OnClick = btnCancelClick OnClick = btnCancelClick
end end
object edtCompanyName: TWebDBEdit object edtCompanyName: TWebDBEdit
Left = 26 Left = 24
Top = 92 Top = 92
Width = 121 Width = 121
Height = 22 Height = 22
...@@ -244,7 +245,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -244,7 +245,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'NAME' DataField = 'NAME'
DataSource = WebDataSource1 DataSource = wdsOrder
end end
object wcbQBItem: TWebDBComboBox object wcbQBItem: TWebDBComboBox
Left = 26 Left = 26
...@@ -256,7 +257,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -256,7 +257,7 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
ItemIndex = -1 ItemIndex = -1
DataField = 'staff_fields_quickbooks_item' DataField = 'staff_fields_quickbooks_item'
DataSource = WebDataSource1 DataSource = wdsOrder
ListField = 'name' ListField = 'name'
ListSource = wdsQBItem ListSource = wdsQBItem
end end
...@@ -272,17 +273,6 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -272,17 +273,6 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnClick = btnPDFClick OnClick = btnPDFClick
end end
object edtOrderNum: TWebEdit
Left = 126
Top = 194
Width = 121
Height = 22
ChildOrder = 81
ElementID = 'edtordernum'
Enabled = False
HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000
end
object btnDelete: TWebButton object btnDelete: TWebButton
Left = 534 Left = 534
Top = 458 Top = 458
...@@ -355,78 +345,112 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie ...@@ -355,78 +345,112 @@ object FOrderEntryCuttingDie: TFOrderEntryCuttingDie
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnClick = WebButton2Click OnClick = WebButton2Click
end end
object WebDataSource1: TWebDataSource object wdbcbINQB: TWebDBCheckBox
Left = 26
Top = 149
Width = 113
Height = 22
Caption = 'In Quickbooks?'
ChildOrder = 29
ElementID = 'wdbcbinqb'
HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000
DataField = 'IN_QB'
DataSource = wdsOrder
ValueChecked = 'T'
ValueUnChecked = 'F'
end
object edtOrderNum: TWebDBEdit
Left = 103
Top = 185
Width = 121
Height = 22
ChildOrder = 30
ElementID = 'edtordernum'
Enabled = False
HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000
DataField = 'ORDER_ID'
DataSource = wdsOrder
end
object wdsOrder: TWebDataSource
AutoEdit = False AutoEdit = False
DataSet = XDataWebDataSet1 DataSet = xdwdsOrder
Left = 418 Left = 418
Top = 86 Top = 86
end end
object XDataWebDataSet1: TXDataWebDataSet object xdwdsOrder: TXDataWebDataSet
Connection = DMConnection.ApiConnection Connection = DMConnection.ApiConnection
Left = 422 Left = 422
Top = 28 Top = 28
object XDataWebDataSet1COMPANY_ID: TIntegerField object xdwdsOrderORDER_DATE: TDateField
FieldName = 'COMPANY_ID'
end
object XDataWebDataSet1USER_ID: TIntegerField
FieldName = 'USER_ID'
end
object XDataWebDataSet1ORDER_DATE: TDateField
FieldName = 'ORDER_DATE' FieldName = 'ORDER_DATE'
end end
object XDataWebDataSet1ORDER_STATUS: TStringField object xdwdsOrderSHORT_NAME: TStringField
FieldName = 'ORDER_STATUS'
end
object XDataWebDataSet1SHORT_NAME: TStringField
FieldName = 'SHORT_NAME' FieldName = 'SHORT_NAME'
end end
object XDataWebDataSet1staff_fields_ship_via: TStringField object xdwdsOrderstaff_fields_ship_via: TStringField
FieldName = 'staff_fields_ship_via' FieldName = 'staff_fields_ship_via'
end end
object XDataWebDataSet1staff_fields_price: TStringField object xdwdsOrderstaff_fields_price: TStringField
FieldName = 'staff_fields_price' FieldName = 'staff_fields_price'
end end
object XDataWebDataSet1staff_fields_invoice_to: TStringField object xdwdsOrderstaff_fields_invoice_to: TStringField
FieldName = 'staff_fields_invoice_to' FieldName = 'staff_fields_invoice_to'
end end
object XDataWebDataSet1staff_fields_invoice_attention: TStringField object xdwdsOrderstaff_fields_invoice_attention: TStringField
FieldName = 'staff_fields_invoice_attention' FieldName = 'staff_fields_invoice_attention'
end end
object XDataWebDataSet1staff_fields_ship_to: TStringField object xdwdsOrderstaff_fields_ship_to: TStringField
FieldName = 'staff_fields_ship_to' FieldName = 'staff_fields_ship_to'
end end
object XDataWebDataSet1staff_fields_ship_attention: TStringField object xdwdsOrderstaff_fields_ship_attention: TStringField
FieldName = 'staff_fields_ship_attention' FieldName = 'staff_fields_ship_attention'
end end
object XDataWebDataSet1staff_fields_po_number: TStringField object xdwdsOrderstaff_fields_po_number: TStringField
FieldName = 'staff_fields_po_number' FieldName = 'staff_fields_po_number'
end end
object XDataWebDataSet1staff_fields_job_name: TStringField object xdwdsOrderstaff_fields_job_name: TStringField
FieldName = 'staff_fields_job_name' FieldName = 'staff_fields_job_name'
end end
object XDataWebDataSet1staff_fields_order_date: TStringField object xdwdsOrderstaff_fields_order_date: TStringField
FieldName = 'staff_fields_order_date' FieldName = 'staff_fields_order_date'
end end
object XDataWebDataSet1staff_fields_proof_date: TStringField object xdwdsOrderstaff_fields_proof_date: TStringField
FieldName = 'staff_fields_proof_date' FieldName = 'staff_fields_proof_date'
end end
object XDataWebDataSet1staff_fields_ship_date: TStringField object xdwdsOrderstaff_fields_ship_date: TStringField
FieldName = 'staff_fields_ship_date' FieldName = 'staff_fields_ship_date'
end end
object XDataWebDataSet1NAME: TStringField object xdwdsOrderNAME: TStringField
FieldName = 'NAME' FieldName = 'NAME'
end end
object XDataWebDataSet1staff_fields_quickbooks_item: TStringField object xdwdsOrderstaff_fields_quickbooks_item: TStringField
FieldName = 'staff_fields_quickbooks_item' FieldName = 'staff_fields_quickbooks_item'
end end
object XDataWebDataSet1general_special_instructions: TStringField object xdwdsOrdergeneral_special_instructions: TStringField
FieldName = 'general_special_instructions' FieldName = 'general_special_instructions'
end end
object XDataWebDataSet1staff_fields_quantity: TStringField object xdwdsOrderstaff_fields_quantity: TStringField
FieldName = 'staff_fields_quantity' FieldName = 'staff_fields_quantity'
end end
object XDataWebDataSet1inQuickBooks: TStringField object xdwdsOrderQB_ESTIMATE_ID: TStringField
FieldName = 'inQuickBooks' FieldName = 'QB_ESTIMATE_ID'
end
object xdwdsOrderQB_ORDER_NUM: TStringField
FieldName = 'QB_ORDER_NUM'
end
object xdwdsOrderUSER_ID: TIntegerField
FieldName = 'USER_ID'
end
object xdwdsOrderCOMPANY_ID: TIntegerField
FieldName = 'COMPANY_ID'
end
object xdwdsOrderORDER_ID: TIntegerField
FieldName = 'ORDER_ID'
end
object xdwdsOrderIN_QB: TStringField
FieldName = 'IN_QB'
end end
end end
object XDataWebClient1: TXDataWebClient object XDataWebClient1: TXDataWebClient
......
...@@ -56,7 +56,11 @@ ...@@ -56,7 +56,11 @@
</div> </div>
<div class="col-auto"> <div class="col-auto">
<label for="wdbe_first_name" style="font-weight: 700; font-size: 15px;" class="form-label mt-2">In Quickbooks?:</label> <label for="wdbe_first_name" style="font-weight: 700; font-size: 15px;" class="form-label mt-2">In Quickbooks?:</label>
<input id="edtinquickbooks"type="text" class="form-control" style="width: 150px"/> <input id="wdbcbinqb" type="checkbox">
</div>
<div class="col-auto">
<label for="wdbe_first_name" style="font-weight: 700; font-size: 15px;" class="form-label mt-2">Quickbooks Order Number:</label>
<input id="edtqbordernum"type="text" class="form-control" style="width: 150px" required/>
</div> </div>
</div> </div>
<h4 class="custom-h4 mt-3">Staff Fields</h4> <h4 class="custom-h4 mt-3">Staff Fields</h4>
......
...@@ -11,28 +11,25 @@ uses ...@@ -11,28 +11,25 @@ uses
type type
TFOrderEntryCuttingDie = class(TWebForm) TFOrderEntryCuttingDie = class(TWebForm)
WebDataSource1: TWebDataSource; wdsOrder: TWebDataSource;
XDataWebDataSet1: TXDataWebDataSet; xdwdsOrder: TXDataWebDataSet;
XDataWebDataSet1COMPANY_ID: TIntegerField; xdwdsOrderORDER_DATE: TDateField;
XDataWebDataSet1USER_ID: TIntegerField; xdwdsOrderSHORT_NAME: TStringField;
XDataWebDataSet1ORDER_DATE: TDateField; xdwdsOrderstaff_fields_ship_via: TStringField;
XDataWebDataSet1ORDER_STATUS: TStringField; xdwdsOrderstaff_fields_price: TStringField;
XDataWebDataSet1SHORT_NAME: TStringField; xdwdsOrderstaff_fields_invoice_to: TStringField;
XDataWebDataSet1staff_fields_ship_via: TStringField; xdwdsOrderstaff_fields_invoice_attention: TStringField;
XDataWebDataSet1staff_fields_price: TStringField; xdwdsOrderstaff_fields_ship_to: TStringField;
XDataWebDataSet1staff_fields_invoice_to: TStringField; xdwdsOrderstaff_fields_ship_attention: TStringField;
XDataWebDataSet1staff_fields_invoice_attention: TStringField; xdwdsOrderstaff_fields_po_number: TStringField;
XDataWebDataSet1staff_fields_ship_to: TStringField; xdwdsOrderstaff_fields_job_name: TStringField;
XDataWebDataSet1staff_fields_ship_attention: TStringField; xdwdsOrderstaff_fields_order_date: TStringField;
XDataWebDataSet1staff_fields_po_number: TStringField; xdwdsOrderstaff_fields_proof_date: TStringField;
XDataWebDataSet1staff_fields_job_name: TStringField; xdwdsOrderstaff_fields_ship_date: TStringField;
XDataWebDataSet1staff_fields_order_date: TStringField;
XDataWebDataSet1staff_fields_proof_date: TStringField;
XDataWebDataSet1staff_fields_ship_date: TStringField;
XDataWebClient1: TXDataWebClient; XDataWebClient1: TXDataWebClient;
WebLabel2: TWebLabel; WebLabel2: TWebLabel;
edtCompanyAccountName: TWebDBEdit; edtCompanyAccountName: TWebDBEdit;
edtInQuickBooks: TWebDBEdit; edtQBOrderNum: TWebDBEdit;
WebLabel1: TWebLabel; WebLabel1: TWebLabel;
dtpOrderDate: TWebDateTimePicker; dtpOrderDate: TWebDateTimePicker;
dtpProofDate: TWebDateTimePicker; dtpProofDate: TWebDateTimePicker;
...@@ -52,16 +49,15 @@ type ...@@ -52,16 +49,15 @@ type
btnSave: TWebButton; btnSave: TWebButton;
btnCancel: TWebButton; btnCancel: TWebButton;
edtCompanyName: TWebDBEdit; edtCompanyName: TWebDBEdit;
XDataWebDataSet1NAME: TStringField; xdwdsOrderNAME: TStringField;
XDataWebDataSet1staff_fields_quickbooks_item: TStringField; xdwdsOrderstaff_fields_quickbooks_item: TStringField;
XDataWebDataSet1general_special_instructions: TStringField; xdwdsOrdergeneral_special_instructions: TStringField;
XDataWebDataSet1staff_fields_quantity: TStringField; xdwdsOrderstaff_fields_quantity: TStringField;
wdsQBItem: TWebDataSource; wdsQBItem: TWebDataSource;
xdwdsQBItem: TXDataWebDataSet; xdwdsQBItem: TXDataWebDataSet;
xdwdsQBItemname: TStringField; xdwdsQBItemname: TStringField;
wcbQBItem: TWebDBComboBox; wcbQBItem: TWebDBComboBox;
btnPDF: TWebButton; btnPDF: TWebButton;
edtOrderNum: TWebEdit;
btnDelete: TWebButton; btnDelete: TWebButton;
btnClose: TWebButton; btnClose: TWebButton;
btnCopy: TWebButton; btnCopy: TWebButton;
...@@ -69,8 +65,15 @@ type ...@@ -69,8 +65,15 @@ type
btnEdit: TWebButton; btnEdit: TWebButton;
btnAdd: TWebButton; btnAdd: TWebButton;
WebButton2: TWebButton; WebButton2: TWebButton;
XDataWebDataSet1inQuickBooks: TStringField;
lblFormState: TWebLabel; lblFormState: TWebLabel;
wdbcbINQB: TWebDBCheckBox;
xdwdsOrderQB_ESTIMATE_ID: TStringField;
xdwdsOrderQB_ORDER_NUM: TStringField;
xdwdsOrderUSER_ID: TIntegerField;
xdwdsOrderCOMPANY_ID: TIntegerField;
xdwdsOrderORDER_ID: TIntegerField;
edtOrderNum: TWebDBEdit;
xdwdsOrderIN_QB: TStringField;
procedure btnSaveClick(Sender: TObject); procedure btnSaveClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject); procedure btnCancelClick(Sender: TObject);
procedure WebFormCreate(Sender: TObject); procedure WebFormCreate(Sender: TObject);
...@@ -81,7 +84,7 @@ type ...@@ -81,7 +84,7 @@ type
[async] procedure GenerateReportPDF; [async] procedure GenerateReportPDF;
procedure SendOrderToServer(); procedure SendOrderToServer();
function VerifyOrder(): boolean; function VerifyOrder(): boolean;
procedure btnDeleteClick(Sender: TObject); [async] procedure btnDeleteClick(Sender: TObject);
[async] procedure delOrder(); [async] procedure delOrder();
procedure btnCloseClick(Sender: TObject); procedure btnCloseClick(Sender: TObject);
procedure btnCopyClick(Sender: TObject); procedure btnCopyClick(Sender: TObject);
...@@ -151,7 +154,6 @@ begin ...@@ -151,7 +154,6 @@ begin
ViewMode; ViewMode;
end; end;
edtOrderNum.Text := orderID;
if notification <> '' then if notification <> '' then
ShowToast(notification); ShowToast(notification);
end; end;
...@@ -209,7 +211,7 @@ begin ...@@ -209,7 +211,7 @@ begin
AddressJSON.AddPair('state', newform.edtState.Text); AddressJSON.AddPair('state', newform.edtState.Text);
AddressJSON.AddPair('zip', newform.edtZip.Text); AddressJSON.AddPair('zip', newform.edtZip.Text);
AddressJSON.AddPair('contact', newform.edtContact.Text); AddressJSON.AddPair('contact', newform.edtContact.Text);
AddressJSON.AddPair('customer_id', customerID); AddressJSON.AddPair('customer_id', xdwdsOrder.FieldByName('COMPANY_ID').AsString);
ship_block := newform.edtFirstLine.Text + slinebreak + ship_block := newform.edtFirstLine.Text + slinebreak +
edtCompanyName.Text + slinebreak + edtCompanyName.Text + slinebreak +
...@@ -255,7 +257,6 @@ begin ...@@ -255,7 +257,6 @@ begin
input := TJSHTMLInputElement(document.getElementById('edtinvoiceto')); input := TJSHTMLInputElement(document.getElementById('edtinvoiceto'));
if edtInvoiceTo.Text = '' then if edtInvoiceTo.Text = '' then
begin begin
console.log('hot');
input.classList.add('is-invalid'); input.classList.add('is-invalid');
result := false; result := false;
end end
...@@ -293,18 +294,18 @@ var ...@@ -293,18 +294,18 @@ var
Response: TXDataClientResponse; Response: TXDataClientResponse;
begin begin
orderJSON := TJSONObject.Create; orderJSON := TJSONObject.Create;
XDataWebDataSet1.Edit; xdwdsOrder.Edit;
//Convert all dates to strings because I was having less issues with that data type. //Convert all dates to strings because I was having less issues with that data type.
XDataWebDataSet1staff_fields_proof_date.Value := DateTimeToStr(dtpProofDate.Date); xdwdsOrderstaff_fields_proof_date.Value := DateTimeToStr(dtpProofDate.Date);
XDataWebDataSet1staff_fields_ship_date.Value := DateTimeToStr(dtpShipDate.Date); xdwdsOrderstaff_fields_ship_date.Value := DateTimeToStr(dtpShipDate.Date);
XDataWebDataSet1staff_fields_order_date.Value := DateTimeToStr(dtpOrderDate.Date); xdwdsOrderstaff_fields_order_date.Value := DateTimeToStr(dtpOrderDate.Date);
XDataWebDataSet1.Post; xdwdsOrder.Post;
XDataWebDataSet1.First; xdwdsOrder.First;
while not XDataWebDataSet1.Eof do while not xdwdsOrder.Eof do
begin begin
for Field in XDataWebDataSet1.Fields do for Field in xdwdsOrder.Fields do
begin begin
if Field is TStringField then if Field is TStringField then
begin begin
...@@ -319,20 +320,16 @@ begin ...@@ -319,20 +320,16 @@ begin
orderJSON.AddPair(Field.FieldName, 'T') orderJSON.AddPair(Field.FieldName, 'T')
else else
orderJSON.AddPair(Field.FieldName, ''); orderJSON.AddPair(Field.FieldName, '');
end
else if Field is TIntegerField then
orderJSON.AddPair(Field.FieldName, Field.AsInteger);
end; end;
xdwdsOrder.Next;
end; end;
XDataWebDataSet1.Next;
end;
orderJSON.AddPair('COMPANY_ID', customerID);
orderJSON.AddPair('USER_ID', JS.toString(AuthService.TokenPayload.Properties['user_id']));
orderJSON.AddPair('mode', mode);
if mode = 'EDIT' then
orderJSON.AddPair('ORDER_ID', orderID);
if mode = 'ADD' then console.log(orderJSON);
ShowToast('Success: Order Added Successfully!')
else orderJSON.AddPair('mode', mode);
ShowToast('Success: Order Edited Successfully');
AddCuttingDieOrder(orderJSON); AddCuttingDieOrder(orderJSON);
end; end;
...@@ -355,14 +352,17 @@ begin ...@@ -355,14 +352,17 @@ begin
mode := 'ADD'; mode := 'ADD';
dtpOrderDate.Date := 0; dtpOrderDate.Date := 0;
dtpProofDate.Date := 0; dtpProofDate.Date := 0;
edtOrderNum.Text := ''; dtpShipDate.Date := 0;
xdwdsOrder.Edit;
xdwdsOrder.FieldByName('ORDER_ID').AsString := '';
xdwdsOrder.Post;
ShowToast('Success: Order Successfully Copied'); ShowToast('Success: Order Successfully Copied');
EditMode(); EditMode();
window.scrollTo(0, 0); window.scrollTo(0, 0);
end; end;
procedure TFOrderEntryCuttingDie.btnDeleteClick(Sender: TObject); [async] procedure TFOrderEntryCuttingDie.btnDeleteClick(Sender: TObject);
begin begin
ShowConfirmationModal( ShowConfirmationModal(
'Are you sure you want to delete this order?', 'Are you sure you want to delete this order?',
...@@ -391,7 +391,7 @@ procedure TFOrderEntryCuttingDie.DelOrder(); ...@@ -391,7 +391,7 @@ procedure TFOrderEntryCuttingDie.DelOrder();
var var
Response: TXDataClientResponse; Response: TXDataClientResponse;
begin begin
Response := await(XDataWebClient1.RawInvokeAsync('ILookupService.DelOrder', [OrderID, 'cutting', JS.toString(AuthService.TokenPayload.Properties['user_id'])])); Response := await(XDataWebClient1.RawInvokeAsync('ILookupService.DelOrder', [xdwdsOrder.FieldByName('ORDER_ID').AsString, 'cutting', JS.toString(AuthService.TokenPayload.Properties['user_id'])]));
end; end;
...@@ -410,7 +410,6 @@ var ...@@ -410,7 +410,6 @@ var
begin begin
try try
// Call the server method to generate the PDF // Call the server method to generate the PDF
console.log(orderID);
xdcResponse := await(XDataWebClient1.RawInvokeAsync('ILookupService.GenerateOrderCuttingPDF', [orderID])); xdcResponse := await(XDataWebClient1.RawInvokeAsync('ILookupService.GenerateOrderCuttingPDF', [orderID]));
jsObject := JS.TJSObject(xdcResponse.Result); jsObject := JS.TJSObject(xdcResponse.Result);
pdfURL := JS.toString(jsObject.Properties['value']); pdfURL := JS.toString(jsObject.Properties['value']);
...@@ -435,10 +434,16 @@ begin ...@@ -435,10 +434,16 @@ begin
Response := await(XDataWebClient1.RawInvokeAsync('ILookupService.AddCuttingDieOrder', Response := await(XDataWebClient1.RawInvokeAsync('ILookupService.AddCuttingDieOrder',
[orderJSON.ToString])); [orderJSON.ToString]));
jsObj := JS.TJSObject(Response.Result); jsObj := JS.TJSObject(Response.Result);
if mode = 'ADD' then {if mode = 'ADD' then
OrderID := String(jsObj.Properties['OrderID']); OrderID := String(jsObj.Properties['OrderID']);}
xdwdsOrder.Close;
xdwdsOrder.SetJsonData(jsObj);
xdwdsOrder.Open;
edtOrderNum.Text := OrderID; edtOrderNum.Text := OrderID;
mode := 'EDIT'; mode := 'EDIT';
ShowToast(String(jsObj.Properties['status']));
except except
on E: EXDataClientRequestException do on E: EXDataClientRequestException do
Utils.ShowErrorModal(E.ErrorResult.ErrorMessage); Utils.ShowErrorModal(E.ErrorResult.ErrorMessage);
...@@ -533,37 +538,30 @@ begin ...@@ -533,37 +538,30 @@ begin
[Order_ID])); [Order_ID]));
order := TJSObject(xdcResponse.Result); order := TJSObject(xdcResponse.Result);
data := TJSArray(order['data']); data := TJSArray(order['data']);
XDataWebDataSet1.Close; xdwdsOrder.Close;
XDataWebDataSet1.SetJsonData(order); xdwdsOrder.SetJsonData(order);
XDataWebDataSet1.Open; xdwdsOrder.Open;
// Check boxes and dates need to be manually set console.log(order);
if not (XDataWebDataSet1staff_fields_order_date.AsString = '') then
dtpOrderDate.Date := StrToDateTime(XDataWebDataSet1staff_fields_order_date.Value) // Dates need to be manually set
if not (xdwdsOrderstaff_fields_order_date.AsString = '') then
dtpOrderDate.Date := StrToDateTime(xdwdsOrderstaff_fields_order_date.Value)
else else
dtpOrderDate.Date := 0; dtpOrderDate.Date := 0;
if not (XDataWebDataSet1staff_fields_proof_date.AsString = '') then if not (xdwdsOrderstaff_fields_proof_date.AsString = '') then
dtpProofDate.Date := StrToDateTime(XDataWebDataSet1staff_fields_proof_date.AsString) dtpProofDate.Date := StrToDateTime(xdwdsOrderstaff_fields_proof_date.AsString)
else else
dtpProofDate.Date := 0; dtpProofDate.Date := 0;
if not (XDataWebDataSet1staff_fields_ship_date.AsString = '') then if not (xdwdsOrderstaff_fields_ship_date.AsString = '') then
dtpShipDate.Date := StrToDateTime(XDataWebDataSet1staff_fields_ship_date.AsString) dtpShipDate.Date := StrToDateTime(xdwdsOrderstaff_fields_ship_date.AsString)
else else
dtpShipDate.Date := 0; dtpShipDate.Date := 0;
console.log(mode);
console.log(XDataWebDataSet1COMPANY_ID.AsString);
if mode = 'EDIT' then
CustomerID := XDataWebDataSet1COMPANY_ID.AsString;
console.log(CustomerID);
if mode = 'EDIT' then
begin
CustomerID := XDataWebDataSet1COMPANY_ID.AsString;
xdwdsShipTo.Close; xdwdsShipTo.Close;
xdwdsShipTo.SetJSONData(order['ADDRESS_LIST']); xdwdsShipTo.SetJSONData(order['ADDRESS_LIST']);
xdwdsShipTo.Open; xdwdsShipTo.Open;
end;
xdwdsQBItem.Close; xdwdsQBItem.Close;
items := TJSObject(order['ITEMS']); items := TJSObject(order['ITEMS']);
...@@ -590,11 +588,14 @@ begin ...@@ -590,11 +588,14 @@ begin
xdcResponse := await(XDataWebClient1.RawInvokeAsync('ILookupService.GetCustomer', xdcResponse := await(XDataWebClient1.RawInvokeAsync('ILookupService.GetCustomer',
[customerID])); [customerID]));
customer := TJSObject(xdcResponse.Result); customer := TJSObject(xdcResponse.Result);
console.log(customer); xdwdsOrder.Close;
XDataWebDataSet1.Close; xdwdsOrder.SetJsonData(customer);
XDataWebDataSet1.SetJsonData(customer); xdwdsOrder.Open;
XDataWebDataSet1.Open; xdwdsOrder.Edit;
console.log(XDataWebDataSet1NAME.AsString); xdwdsOrder.FieldByName('COMPANY_ID').AsString := customerID;
xdwdsOrderUSER_ID.AsString := JS.toString(AuthService.TokenPayload.Properties['user_id']);
xdwdsOrder.Post;
dtpOrderDate.Date := 0; dtpOrderDate.Date := 0;
dtpProofDate.Date := 0; dtpProofDate.Date := 0;
...@@ -621,7 +622,7 @@ end; ...@@ -621,7 +622,7 @@ end;
procedure TFOrderEntryCuttingDie.EditMode; procedure TFOrderEntryCuttingDie.EditMode;
begin begin
XDataWebDataSet1.Edit; xdwdsOrder.Edit;
FViewMain.change := true; FViewMain.change := true;
btnCopy.Enabled := false; btnCopy.Enabled := false;
btnPDF.Enabled := false; btnPDF.Enabled := false;
......
...@@ -353,10 +353,12 @@ type ...@@ -353,10 +353,12 @@ type
// Company // Company
ORDER_ID: integer;
COMPANY_ID: integer; COMPANY_ID: integer;
NAME: string; NAME: string;
SHORT_NAME: string; SHORT_NAME: string;
inQuickBooks: string; IN_QB: string;
QB_ORDER_NUM: string;
ADDRESS_LIST: TList<TAddressItem>; ADDRESS_LIST: TList<TAddressItem>;
ITEMS: TItemList; ITEMS: TItemList;
......
...@@ -1324,10 +1324,12 @@ begin ...@@ -1324,10 +1324,12 @@ begin
result := TCuttingDie.Create; result := TCuttingDie.Create;
// Company // Company
result.ORDER_ID := ordersDB.UniQuery1.FieldByName('ORDER_ID').AsInteger;
result.COMPANY_ID := ordersDB.UniQuery1.FieldByName('COMPANY_ID').AsInteger; result.COMPANY_ID := ordersDB.UniQuery1.FieldByName('COMPANY_ID').AsInteger;
result.NAME := ordersDB.UniQuery1.FieldByName('NAME').AsString; result.NAME := ordersDB.UniQuery1.FieldByName('NAME').AsString;
result.SHORT_NAME := ordersDB.UniQuery1.FieldByName('SHORT_NAME').AsString; result.SHORT_NAME := ordersDB.UniQuery1.FieldByName('SHORT_NAME').AsString;
result.inQuickBooks := '?'; result.IN_QB := ordersDB.UniQuery1.FieldByName('IN_QB').AsString;
result.QB_ORDER_NUM := ordersDB.UniQuery1.FieldByName('QB_ORDER_NUM').AsString;
// Staff Fields // Staff Fields
result.staff_fields_order_date := ordersDB.UniQuery1.FieldByName('staff_fields_order_date').AsString; result.staff_fields_order_date := ordersDB.UniQuery1.FieldByName('staff_fields_order_date').AsString;
...@@ -2219,6 +2221,8 @@ var ...@@ -2219,6 +2221,8 @@ var
ORDER_ID: integer; ORDER_ID: integer;
mode: string; mode: string;
msg: string; msg: string;
temp: string;
temp2: boolean;
begin begin
DateFormat := TFormatSettings.Create; DateFormat := TFormatSettings.Create;
DateFormat.ShortDateFormat := 'yyyy-mm-dd'; DateFormat.ShortDateFormat := 'yyyy-mm-dd';
...@@ -2264,8 +2268,10 @@ begin ...@@ -2264,8 +2268,10 @@ begin
else else
TDateTimeField(Field).AsDateTime := StrToDate(Pair.JsonValue.Value); TDateTimeField(Field).AsDateTime := StrToDate(Pair.JsonValue.Value);
end end
else if Field is TStringField then
Field.AsString := Pair.JsonValue.Value
else else
Field.AsString := Pair.JsonValue.Value; Field.AsInteger := pair.JsonValue.AsType<Integer>;
end; end;
end; end;
...@@ -2286,8 +2292,9 @@ begin ...@@ -2286,8 +2292,9 @@ begin
else else
msg := 'Success: Order Successfully Edited'; msg := 'Success: Order Successfully Edited';
Result := TJSONObject.Create.AddPair('status', msg); Result := JSONData;
Result.AddPair('OrderID', ORDER_ID); Result.AddPair('status', msg);
Result.AddPair('ORDER_ID', ORDER_ID);
TXDataOperationContext.Current.Handler.ManagedObjects.Add(Result); TXDataOperationContext.Current.Handler.ManagedObjects.Add(Result);
except except
on E: Exception do on E: Exception do
...@@ -2468,8 +2475,11 @@ begin ...@@ -2468,8 +2475,11 @@ begin
Field.Clear // This sets the field to NULL (empty) Field.Clear // This sets the field to NULL (empty)
else else
TDateTimeField(Field).AsDateTime := StrToDate(Pair.JsonValue.Value) TDateTimeField(Field).AsDateTime := StrToDate(Pair.JsonValue.Value)
else if Pair.JsonValue.Value <> '' then else if ( ( field is TStringField ) and ( Pair.JsonValue.Value <> '' ) ) then
Field.AsString := Pair.JsonValue.Value; Field.AsString := Pair.JsonValue.Value
else if field is TIntegerField then
Field.AsInteger := Pair.JsonValue.AsType<Integer>;
end; end;
end; end;
ordersDB.UniQuery1.FieldByName('ORDER_ID').AsString := OrderID; ordersDB.UniQuery1.FieldByName('ORDER_ID').AsString := OrderID;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
MemoLogLevel=3 MemoLogLevel=3
FileLogLevel=5 FileLogLevel=5
webClientVersion=0.9.7 webClientVersion=0.9.7
LogFileNum=849 LogFileNum=864
[Database] [Database]
Server=192.168.159.144 Server=192.168.159.144
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment