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