Commit 7e3b07ca by Cam Hayes

kgOrdersTest v0.9.15.3 deployed

parent 526d09d9
...@@ -19,7 +19,7 @@ type ...@@ -19,7 +19,7 @@ type
FUnauthorizedAccessProc: TUnauthorizedAccessProc; FUnauthorizedAccessProc: TUnauthorizedAccessProc;
public public
const clientVersion = '0.9.15.1'; const clientVersion = '0.9.15.3';
procedure InitApp(SuccessProc: TSuccessProc; procedure InitApp(SuccessProc: TSuccessProc;
UnauthorizedAccessProc: TUnauthorizedAccessProc); UnauthorizedAccessProc: TUnauthorizedAccessProc);
procedure SetClientConfig(Callback: TVersionCheckCallback); procedure SetClientConfig(Callback: TVersionCheckCallback);
......
...@@ -92,6 +92,12 @@ end; ...@@ -92,6 +92,12 @@ end;
procedure ShowErrorModal(msg: string); procedure ShowErrorModal(msg: string);
begin begin
HideSpinner('spinner'); HideSpinner('spinner');
if msg = '' then
begin
msg := 'Error connecting to EM Sytems Server.' + slinebreak +
'Please contact EM Systems Support.'
end;
asm asm
var modal = document.getElementById('main_errormodal'); var modal = document.getElementById('main_errormodal');
var label = document.getElementById('main_lblmodal_body'); var label = document.getElementById('main_lblmodal_body');
......
...@@ -23,7 +23,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -23,7 +23,7 @@ object FViewAddCustomer: TFViewAddCustomer
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnChange = edtShortNameChange OnChange = edtShortNameChange
DataField = 'SHORT_NAME' DataField = 'SHORT_NAME'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtName: TWebDBEdit object edtName: TWebDBEdit
Left = 19 Left = 19
...@@ -36,7 +36,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -36,7 +36,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'NAME' DataField = 'NAME'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtBillAddress: TWebDBEdit object edtBillAddress: TWebDBEdit
Left = 19 Left = 19
...@@ -49,7 +49,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -49,7 +49,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'BILL_ADDRESS' DataField = 'BILL_ADDRESS'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtBillCity: TWebDBEdit object edtBillCity: TWebDBEdit
Left = 19 Left = 19
...@@ -62,7 +62,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -62,7 +62,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'BILL_CITY' DataField = 'BILL_CITY'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtBillState: TWebDBEdit object edtBillState: TWebDBEdit
Left = 19 Left = 19
...@@ -75,7 +75,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -75,7 +75,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'BILL_STATE' DataField = 'BILL_STATE'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtBillZip: TWebDBEdit object edtBillZip: TWebDBEdit
Left = 19 Left = 19
...@@ -88,7 +88,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -88,7 +88,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'BILL_ZIP' DataField = 'BILL_ZIP'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtBillContact: TWebDBEdit object edtBillContact: TWebDBEdit
Left = 19 Left = 19
...@@ -101,7 +101,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -101,7 +101,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'BILL_CONTACT' DataField = 'BILL_CONTACT'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object btnSave: TWebButton object btnSave: TWebButton
Left = 19 Left = 19
...@@ -165,8 +165,9 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -165,8 +165,9 @@ object FViewAddCustomer: TFViewAddCustomer
Enabled = False Enabled = False
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnChange = edtCustomerIDChange
DataField = 'CUSTOMER_ID' DataField = 'CUSTOMER_ID'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object edtQBID: TWebDBEdit object edtQBID: TWebDBEdit
Left = 151 Left = 151
...@@ -179,7 +180,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -179,7 +180,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'QB_LIST_ID' DataField = 'QB_LIST_ID'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object memoAddressBlock: TWebMemo object memoAddressBlock: TWebMemo
Left = 162 Left = 162
...@@ -309,7 +310,7 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -309,7 +310,7 @@ object FViewAddCustomer: TFViewAddCustomer
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
DataField = 'QB_TYPE' DataField = 'QB_TYPE'
DataSource = WebDataSource1 DataSource = wdsCustomer
end end
object wdbtcAddresses: TWebDBTableControl object wdbtcAddresses: TWebDBTableControl
Left = 310 Left = 310
...@@ -465,56 +466,55 @@ object FViewAddCustomer: TFViewAddCustomer ...@@ -465,56 +466,55 @@ object FViewAddCustomer: TFViewAddCustomer
Left = 454 Left = 454
Top = 72 Top = 72
end end
object WebDataSource1: TWebDataSource object wdsCustomer: TWebDataSource
AutoEdit = False DataSet = xdwdsCustomer
DataSet = XDataWebDataSet1
Left = 532 Left = 532
Top = 126 Top = 126
end end
object XDataWebDataSet1: TXDataWebDataSet object xdwdsCustomer: TXDataWebDataSet
Connection = DMConnection.ApiConnection Connection = DMConnection.ApiConnection
Left = 426 Left = 426
Top = 132 Top = 132
object XDataWebDataSet1SHORT_NAME: TStringField object xdwdsCustomerSHORT_NAME: TStringField
FieldName = 'SHORT_NAME' FieldName = 'SHORT_NAME'
end end
object XDataWebDataSet1NAME: TStringField object xdwdsCustomerNAME: TStringField
FieldName = 'NAME' FieldName = 'NAME'
end end
object XDataWebDataSet1BILL_ADDRESS: TStringField object xdwdsCustomerBILL_ADDRESS: TStringField
FieldName = 'BILL_ADDRESS' FieldName = 'BILL_ADDRESS'
end end
object XDataWebDataSet1BILL_CITY: TStringField object xdwdsCustomerBILL_CITY: TStringField
FieldName = 'BILL_CITY' FieldName = 'BILL_CITY'
end end
object XDataWebDataSet1BILL_STATE: TStringField object xdwdsCustomerBILL_STATE: TStringField
FieldName = 'BILL_STATE' FieldName = 'BILL_STATE'
end end
object XDataWebDataSet1BILL_CONTACT: TStringField object xdwdsCustomerBILL_CONTACT: TStringField
FieldName = 'BILL_CONTACT' FieldName = 'BILL_CONTACT'
end end
object XDataWebDataSet1BILL_ZIP: TStringField object xdwdsCustomerBILL_ZIP: TStringField
FieldName = 'BILL_ZIP' FieldName = 'BILL_ZIP'
end end
object XDataWebDataSet1START_DATE: TStringField object xdwdsCustomerSTART_DATE: TStringField
FieldName = 'START_DATE' FieldName = 'START_DATE'
end end
object XDataWebDataSet1QB_LIST_ID: TStringField object xdwdsCustomerQB_LIST_ID: TStringField
FieldName = 'QB_LIST_ID' FieldName = 'QB_LIST_ID'
end end
object XDataWebDataSet1END_DATE: TStringField object xdwdsCustomerEND_DATE: TStringField
FieldName = 'END_DATE' FieldName = 'END_DATE'
end end
object XDataWebDataSet1FAX: TStringField object xdwdsCustomerFAX: TStringField
FieldName = 'FAX' FieldName = 'FAX'
end end
object XDataWebDataSet1PHONE: TStringField object xdwdsCustomerPHONE: TStringField
FieldName = 'PHONE' FieldName = 'PHONE'
end end
object XDataWebDataSet1CUSTOMER_ID: TIntegerField object xdwdsCustomerCUSTOMER_ID: TIntegerField
FieldName = 'CUSTOMER_ID' FieldName = 'CUSTOMER_ID'
end end
object XDataWebDataSet1QB_TYPE: TStringField object xdwdsCustomerQB_TYPE: TStringField
FieldName = 'QB_TYPE' FieldName = 'QB_TYPE'
end end
end end
......
...@@ -506,15 +506,16 @@ end; ...@@ -506,15 +506,16 @@ end;
procedure TFViewItems.btnDeleteClick(Sender: TObject); procedure TFViewItems.btnDeleteClick(Sender: TObject);
begin begin
ShowNotificationModal('Deleting items is not yet implemented.'); ShowToast('Deleting items is not yet implemented.', 'info');
end; end;
procedure TFViewItems.btnUpdateClick(Sender: TObject); procedure TFViewItems.btnUpdateClick(Sender: TObject);
var var
itemOptions: string; itemOptions, AccessType: string;
newform: TFViewAddItem; newform: TFViewAddItem;
begin begin
if JS.toString(AuthService.TokenPayload.Properties['user_access_type']) = 'ADMIN' then AccessType := JS.toString(AuthService.TokenPayload.Properties['user_access_type']);
if( ( AccessType = 'ADMIN' ) or ( AccessType = 'QBUSR' ) ) then
begin begin
UpdateItem(); UpdateItem();
end end
......
...@@ -54,7 +54,7 @@ procedure TFViewLogin.btnLoginClick(Sender: TObject); ...@@ -54,7 +54,7 @@ procedure TFViewLogin.btnLoginClick(Sender: TObject);
procedure LoginError(AMsg: string); procedure LoginError(AMsg: string);
begin begin
ShowNotification('Login Error: ' + AMsg); ShowNotification(AMsg);
end; end;
var var
hashPW: string; hashPW: string;
......
...@@ -74,6 +74,7 @@ object FViewMain: TFViewMain ...@@ -74,6 +74,7 @@ object FViewMain: TFViewMain
Height = 14 Height = 14
ElementID = 'dropdown.menu.itemlist' ElementID = 'dropdown.menu.itemlist'
ElementFont = efCSS ElementFont = efCSS
Enabled = False
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnClick = lblItemsListClick OnClick = lblItemsListClick
...@@ -86,6 +87,7 @@ object FViewMain: TFViewMain ...@@ -86,6 +87,7 @@ object FViewMain: TFViewMain
Height = 14 Height = 14
ElementID = 'dropdown.menu.users' ElementID = 'dropdown.menu.users'
ElementFont = efCSS ElementFont = efCSS
Enabled = False
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
OnClick = lblUsersClick OnClick = lblUsersClick
...@@ -114,6 +116,7 @@ object FViewMain: TFViewMain ...@@ -114,6 +116,7 @@ object FViewMain: TFViewMain
ElementID = 'lblcustomers' ElementID = 'lblcustomers'
ElementFont = efCSS ElementFont = efCSS
ElementPosition = epRelative ElementPosition = epRelative
Enabled = False
HeightStyle = ssAuto HeightStyle = ssAuto
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
...@@ -140,6 +143,7 @@ object FViewMain: TFViewMain ...@@ -140,6 +143,7 @@ object FViewMain: TFViewMain
Caption = 'QB Info' Caption = 'QB Info'
ElementID = 'dropdown.menu.linktoqb' ElementID = 'dropdown.menu.linktoqb'
ElementFont = efCSS ElementFont = efCSS
Enabled = False
HeightStyle = ssAuto HeightStyle = ssAuto
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
......
...@@ -92,7 +92,7 @@ uses ...@@ -92,7 +92,7 @@ uses
procedure TFViewMain.WebFormCreate(Sender: TObject); procedure TFViewMain.WebFormCreate(Sender: TObject);
var var
userName: string; userName, AccessType: string;
test: boolean; test: boolean;
begin begin
FUserInfo := GetUserInfo; FUserInfo := GetUserInfo;
...@@ -100,14 +100,20 @@ begin ...@@ -100,14 +100,20 @@ begin
lblUsername.Caption := ' ' + userName.ToLower + ' '; lblUsername.Caption := ' ' + userName.ToLower + ' ';
FChildForm := nil; FChildForm := nil;
change := false; change := false;
AccessType := JS.toString(AuthService.TokenPayload.Properties['user_access_type']);
if (not (JS.toString(AuthService.TokenPayload.Properties['user_access_type']) = 'ADMIN')) then if ( AccessType = 'ADMIN' ) then
begin begin
lblUsers.enabled := false; lblUsers.enabled := true;
lblQBInfo.Enabled := false; lblCustomers.Enabled := true;
lblCustomers.Enabled := false; lblItemsList.Enabled := true;
lblItemsList.Enabled := false;
end; end;
if( ( AccessType = 'ADMIN' ) or ( AccessType = 'QBUSR' ) ) then
begin
lblQBInfo.Enabled := true;
end;
lblAppTitle.Caption := 'Koehler-Gibson Orders'; lblAppTitle.Caption := 'Koehler-Gibson Orders';
lblVersion.Caption := 'v' + DMConnection.clientVersion; lblVersion.Caption := 'v' + DMConnection.clientVersion;
ShowForm(TFViewOrders); ShowForm(TFViewOrders);
......
...@@ -390,8 +390,10 @@ procedure TFOrderEntryCorrugated.btnQBClick(Sender: TObject); ...@@ -390,8 +390,10 @@ procedure TFOrderEntryCorrugated.btnQBClick(Sender: TObject);
var var
orderJSON: TJSONObject; orderJSON: TJSONObject;
qbEnabled: boolean; qbEnabled: boolean;
AccessType: string;
begin begin
if JS.toString(AuthService.TokenPayload.Properties['user_access_type']) = 'ADMIN' then AccessType := JS.toString(AuthService.TokenPayload.Properties['user_access_type']);
if( ( AccessType = 'ADMIN' ) or ( AccessType = 'QBUSR' ) ) then
begin begin
if ( VerifyQBOrder() )then if ( VerifyQBOrder() )then
begin begin
...@@ -513,6 +515,10 @@ begin ...@@ -513,6 +515,10 @@ begin
xdwdsOrder.Close; xdwdsOrder.Close;
xdwdsOrder.SetJsonData(jsObj); xdwdsOrder.SetJsonData(jsObj);
xdwdsOrder.Open; xdwdsOrder.Open;
cbLoose.Checked := ( xdwdsOrder.FieldByName('mounting_loose').AsString <> '' );
cbStripMount.Checked := ( xdwdsOrder.FieldByName('mounting_strip_mount').AsString <> '' );
OrderID := xdwdsOrderORDER_ID.AsString;
mode := 'EDIT'; mode := 'EDIT';
ShowToast(string(jsObj.Properties['status'])); ShowToast(string(jsObj.Properties['status']));
...@@ -788,7 +794,7 @@ begin ...@@ -788,7 +794,7 @@ begin
container := TJSHTMLElement(document.getElementById('additionalFields')); container := TJSHTMLElement(document.getElementById('additionalFields'));
if Assigned(container) then if Assigned(container) then
container.innerHTML := ''; // Wipe previous content container.innerHTML := ''; // Wipe previous colors
if xdwdsOrdercolors_colors.Value <> '' then if xdwdsOrdercolors_colors.Value <> '' then
begin begin
...@@ -801,6 +807,7 @@ begin ...@@ -801,6 +807,7 @@ begin
end; end;
end; end;
if xdwdsOrder.FieldByName('mounting_loose').AsString <> '' then if xdwdsOrder.FieldByName('mounting_loose').AsString <> '' then
cbLoose.Checked := true; cbLoose.Checked := true;
......
...@@ -194,8 +194,10 @@ procedure TFOrderEntryCuttingDie.btnQBClick(Sender: TObject); ...@@ -194,8 +194,10 @@ procedure TFOrderEntryCuttingDie.btnQBClick(Sender: TObject);
var var
orderJSON: TJSONObject; orderJSON: TJSONObject;
qbEnabled: boolean; qbEnabled: boolean;
AccessType: string;
begin begin
if JS.toString(AuthService.TokenPayload.Properties['user_access_type']) = 'ADMIN' then AccessType := JS.toString(AuthService.TokenPayload.Properties['user_access_type']);
if( ( AccessType = 'ADMIN' ) or ( AccessType = 'QBUSR' ) ) then
begin begin
if ( VerifyQBOrder() )then if ( VerifyQBOrder() )then
begin begin
...@@ -428,6 +430,7 @@ begin ...@@ -428,6 +430,7 @@ begin
xdwdsOrder.Close; xdwdsOrder.Close;
xdwdsOrder.SetJsonData(jsObj); xdwdsOrder.SetJsonData(jsObj);
xdwdsOrder.Open; xdwdsOrder.Open;
OrderID := xdwdsOrderORDER_ID.AsString;
mode := 'EDIT'; mode := 'EDIT';
ShowToast(String(jsObj.Properties['status'])); ShowToast(String(jsObj.Properties['status']));
...@@ -488,8 +491,8 @@ begin ...@@ -488,8 +491,8 @@ begin
if confirmed then if confirmed then
begin begin
FViewMain.change := false; FViewMain.change := false;
if xdwdsOrder.FieldByName('ORDER_ID').AsString <> '' then if orderID <> '' then
FViewMain.ViewOrderEntryCuttingDie(xdwdsOrder.FieldByName('ORDER_ID').AsString, '', 'EDIT', 'Failure: Changes Discarded') FViewMain.ViewOrderEntryCuttingDie(orderID, '', 'EDIT', 'Failure: Changes Discarded')
else else
FViewMain.ViewOrders(''); FViewMain.ViewOrders('');
end; end;
......
...@@ -454,8 +454,10 @@ procedure TFOrderEntryWeb.btnQBClick(Sender: TObject); ...@@ -454,8 +454,10 @@ procedure TFOrderEntryWeb.btnQBClick(Sender: TObject);
var var
orderJSON: TJSONObject; orderJSON: TJSONObject;
qbEnabled: boolean; qbEnabled: boolean;
AccessType: string;
begin begin
if JS.toString(AuthService.TokenPayload.Properties['user_access_type']) = 'ADMIN' then AccessType := JS.toString(AuthService.TokenPayload.Properties['user_access_type']);
if( ( AccessType = 'ADMIN' ) or ( AccessType = 'QBUSR' ) ) then
begin begin
if ( VerifyQBOrder() )then if ( VerifyQBOrder() )then
begin begin
...@@ -597,6 +599,7 @@ begin ...@@ -597,6 +599,7 @@ begin
xdwdsOrder.Open; xdwdsOrder.Open;
mode := 'EDIT'; mode := 'EDIT';
OrderID := xdwdsOrderORDER_ID.AsString;
ShowToast(String(jsObj.Properties['status'])); ShowToast(String(jsObj.Properties['status']));
except except
on E: EXDataClientRequestException do on E: EXDataClientRequestException do
...@@ -768,6 +771,7 @@ var ...@@ -768,6 +771,7 @@ var
colorList: TJSArray; colorList: TJSArray;
color: TJSObject; color: TJSObject;
items: TJSObject; items: TJSObject;
container: TJSHTMLElement;
begin begin
Utils.ShowSpinner('spinner'); Utils.ShowSpinner('spinner');
try try
...@@ -779,6 +783,10 @@ begin ...@@ -779,6 +783,10 @@ begin
xdwdsOrder.SetJsonData(order); xdwdsOrder.SetJsonData(order);
xdwdsOrder.Open; xdwdsOrder.Open;
container := TJSHTMLElement(document.getElementById('additionalFields'));
if Assigned(container) then
container.innerHTML := ''; // Wipe previous colors
if xdwdsOrderquantity_and_colors_qty_colors.Value <> '' then if xdwdsOrderquantity_and_colors_qty_colors.Value <> '' then
begin begin
colorObject := TJSObject(TJSJSON.parse(xdwdsOrderquantity_and_colors_qty_colors.Value)); colorObject := TJSObject(TJSJSON.parse(xdwdsOrderquantity_and_colors_qty_colors.Value));
...@@ -875,6 +883,7 @@ begin ...@@ -875,6 +883,7 @@ begin
btnCancel.Enabled := True; btnCancel.Enabled := True;
btnEdit.Enabled := false; btnEdit.Enabled := false;
btnAdd.Enabled := false; btnAdd.Enabled := false;
btnQB.Enabled := false;
cbPdf.Enabled := True; cbPdf.Enabled := True;
cbInkJet.Enabled := True; cbInkJet.Enabled := True;
...@@ -912,6 +921,7 @@ begin ...@@ -912,6 +921,7 @@ begin
btnCancel.Enabled := false; btnCancel.Enabled := false;
btnEdit.Enabled := true; btnEdit.Enabled := true;
btnAdd.Enabled := true; btnAdd.Enabled := true;
btnQB.Enabled := true;
FViewMain.change := false; FViewMain.change := false;
cbPdf.Enabled := False; cbPdf.Enabled := False;
......
...@@ -14,7 +14,7 @@ uses ...@@ -14,7 +14,7 @@ uses
WEBLib.JSON, Auth.Service, XData.Web.Client, WebLib.Storage, WEBLib.JSON, Auth.Service, XData.Web.Client, WebLib.Storage,
ConnectionModule, App.Types, Vcl.StdCtrls, Vcl.Controls, WEBLib.DBCtrls, ConnectionModule, App.Types, Vcl.StdCtrls, Vcl.Controls, WEBLib.DBCtrls,
XData.Web.JsonDataset, WEBLib.DB, Data.DB, XData.Web.Dataset, XData.Web.DatasetCommon, XData.Web.JsonDataset, WEBLib.DB, Data.DB, XData.Web.Dataset, XData.Web.DatasetCommon,
WEBLib.Grids, VCL.Forms; WEBLib.Grids, VCL.Forms, Math;
type type
TFViewOrders = class(TWebForm) TFViewOrders = class(TWebForm)
...@@ -552,8 +552,15 @@ end; ...@@ -552,8 +552,15 @@ end;
procedure TFViewOrders.wcbPageSizeChange(Sender: TObject); procedure TFViewOrders.wcbPageSizeChange(Sender: TObject);
var
ratio: double;
begin begin
ratio := PageSize/StrToInt(wcbPageSize.Text);
PageSize := StrToInt(wcbPageSize.Text); PageSize := StrToInt(wcbPageSize.Text);
if ratio < 1 then
PageNumber := Ceil(PageNumber * ratio)
else
PageNumber := Ceil(PageNumber * ratio) - Trunc(ratio) + 1;
getOrders(generateSearchOptions()); getOrders(generateSearchOptions());
end; end;
......
...@@ -220,7 +220,7 @@ begin ...@@ -220,7 +220,7 @@ begin
else if wlcbStatus.DisplayText = 'Plate Done' then else if wlcbStatus.DisplayText = 'Plate Done' then
begin begin
dtpPlateDue.Date := plateDue; dtpPlateDue.Date := plateDue;
dtpShipDue.Date := plateDue; dtpShipDue.Date := dtpDate.Date;
end end
else if wlcbStatus.DisplayText = 'Ship Done' then else if wlcbStatus.DisplayText = 'Ship Done' then
begin begin
...@@ -235,10 +235,6 @@ begin ...@@ -235,10 +235,6 @@ begin
begin begin
dtpShipDue.Date := shipDue; dtpShipDue.Date := shipDue;
end end
else if wlcbStatus.DisplayText = 'Art Done' then
begin
dtpShipDue.Date := dtpDate.Date;
end
else if wlcbStatus.DisplayText = 'Ship Done' then else if wlcbStatus.DisplayText = 'Ship Done' then
begin begin
dtpShipDue.Date := shipDue; dtpShipDue.Date := shipDue;
......
...@@ -195,23 +195,9 @@ object FViewEditUser: TFViewEditUser ...@@ -195,23 +195,9 @@ object FViewEditUser: TFViewEditUser
ChildOrder = 19 ChildOrder = 19
ElementID = 'edtrights' ElementID = 'edtrights'
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
MaxLength = 11
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
end end
object cbAccess: TWebComboBox
Left = 346
Top = 90
Width = 145
Height = 23
ElementID = 'cbaccess'
HeightPercent = 100.000000000000000000
TabStop = False
WidthPercent = 100.000000000000000000
ItemIndex = -1
Items.Strings = (
'SALES'
'USER'
'ADMIN')
end
object edtQB: TWebEdit object edtQB: TWebEdit
Left = 346 Left = 346
Top = 62 Top = 62
...@@ -223,6 +209,33 @@ object FViewEditUser: TFViewEditUser ...@@ -223,6 +209,33 @@ object FViewEditUser: TFViewEditUser
HeightPercent = 100.000000000000000000 HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000 WidthPercent = 100.000000000000000000
end end
object cbAccess: TWebLookupComboBox
Left = 346
Top = 93
Width = 145
Height = 22
ElementID = 'cbaccess'
HeightPercent = 100.000000000000000000
WidthPercent = 100.000000000000000000
ItemIndex = -1
LookupValues = <
item
Value = 'ADMIN'
DisplayText = 'Admin'
end
item
Value = 'USER'
DisplayText = 'User'
end
item
Value = 'SALES'
DisplayText = 'Sales User'
end
item
Value = 'QBUSR'
DisplayText = 'QB User'
end>
end
object XDataWebClient1: TXDataWebClient object XDataWebClient1: TXDataWebClient
Connection = DMConnection.ApiConnection Connection = DMConnection.ApiConnection
Left = 514 Left = 514
......
...@@ -29,9 +29,9 @@ type ...@@ -29,9 +29,9 @@ type
lblRights: TWebLabel; lblRights: TWebLabel;
edtRights: TWebEdit; edtRights: TWebEdit;
lblAccess: TWebLabel; lblAccess: TWebLabel;
cbAccess: TWebComboBox;
lblQB: TWebLabel; lblQB: TWebLabel;
edtQB: TWebEdit; edtQB: TWebEdit;
cbAccess: TWebLookupComboBox;
procedure WebFormCreate(Sender: TObject); procedure WebFormCreate(Sender: TObject);
procedure btnConfirmClick(Sender: TObject); procedure btnConfirmClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject); procedure btnCancelClick(Sender: TObject);
...@@ -90,7 +90,7 @@ begin ...@@ -90,7 +90,7 @@ begin
'&password=' + edtPassword.Text + '&password=' + edtPassword.Text +
'&status=' + BoolToStr(cbStatus.Checked) + '&status=' + BoolToStr(cbStatus.Checked) +
'&email=' + edtEmail.Text + '&email=' + edtEmail.Text +
'&access=' + cbAccess.Text + '&access=' + cbAccess.Value +
'&newuser=' + edtUsername.Text + '&newuser=' + edtUsername.Text +
'&rights=' + edtRights.Text + '&rights=' + edtRights.Text +
'&QB=' + edtQB.Text; '&QB=' + edtQB.Text;
...@@ -123,7 +123,7 @@ begin ...@@ -123,7 +123,7 @@ begin
'&password=' + edtPassword.Text + '&password=' + edtPassword.Text +
'&status=' + BoolToStr(cbStatus.Checked) + '&status=' + BoolToStr(cbStatus.Checked) +
'&email=' + edtEmail.Text + '&email=' + edtEmail.Text +
'&access=' + cbAccess.Text + '&access=' + cbAccess.Value +
'&newuser=' + edtUsername.Text + '&newuser=' + edtUsername.Text +
'&rights=' + edtRights.Text + '&rights=' + edtRights.Text +
'&QB=' + edtQB.Text; '&QB=' + edtQB.Text;
...@@ -176,7 +176,10 @@ begin ...@@ -176,7 +176,10 @@ begin
edtPassword.Text := 'hidden'; edtPassword.Text := 'hidden';
end; end;
edtEmail.Text := Email; edtEmail.Text := Email;
cbAccess.Text := Access; if Access = '' then
cbAccess.Value := 'USER'
else
cbAccess.Value := Access;
edtRights.Text := Rights; edtRights.Text := Rights;
edtQB.Text := QB; edtQB.Text := QB;
if Status = 'ACTIVE' then if Status = 'ACTIVE' then
......
...@@ -65,6 +65,9 @@ end; ...@@ -65,6 +65,9 @@ end;
procedure UnauthorizedAccessProc(AMessage: string); procedure UnauthorizedAccessProc(AMessage: string);
begin begin
if Pos('JWT', AMessage) > 0 then
DisplayLoginView('Login token expired! Please login again')
else
DisplayLoginView(AMessage); DisplayLoginView(AMessage);
end; end;
...@@ -110,6 +113,9 @@ begin ...@@ -110,6 +113,9 @@ begin
// location.replace(base + "?ver=" + ClientVer + "&r=" + Date.now() + location.hash); // location.replace(base + "?ver=" + ClientVer + "&r=" + Date.now() + location.hash);
// }); // });
// end; // end;
if Pos('version', ErrorMessage) > 0 then
ShowMessage( ErrorMessage )
else
ShowMessage( 'Error connecting to kgOrdersServer' + sLineBreak + 'Please contact EM Systems support' ); ShowMessage( 'Error connecting to kgOrdersServer' + sLineBreak + 'Please contact EM Systems support' );
end; end;
end); end);
......
...@@ -48,14 +48,13 @@ uses ...@@ -48,14 +48,13 @@ uses
procedure TAuthDatabase.DataModuleCreate(Sender: TObject); procedure TAuthDatabase.DataModuleCreate(Sender: TObject);
begin begin
Logger.Log( 5, 'TAuthDatabase.DataModuleCreate' ); Logger.Log( 5, 'TAuthDatabase.DataModuleCreate' );
LoadDatabaseSettings( ucKG );
try try
LoadDatabaseSettings( ucKG );
ucKG.Connect; ucKG.Connect;
except except
on E: Exception do on E: Exception do
begin begin
Logger.Log( 1, '--TAuthDatabase.DataModuleCreate -Error connecting to database: ' + E.Message ); Logger.Log( 1, '--TAuthDatabase.DataModuleCreate -Error connecting to database: ' + E.Message );
raise; //EXDataHttpException.Create(500, 'Error Connecting to database! Please try again later or contact a system admin!');
end; end;
end; end;
end; end;
......
...@@ -54,7 +54,7 @@ begin ...@@ -54,7 +54,7 @@ begin
if not authDB.ucKG.Connected then if not authDB.ucKG.Connected then
begin begin
Logger.Log(1, 'Unable to connect to the database: A KGOrders Server Error has occured!'); Logger.Log(1, 'Unable to connect to the database: A KGOrders Server Error has occured!');
raise EXDataHttpException.Create(500, 'Unable to create Auth database: A KGOrders Server Error has occured!'); raise EXDataHttpException.Create(500, 'Unable to connect to the database: A KGOrders Server Error has occured!');
end; end;
except except
on E: Exception do on E: Exception do
...@@ -63,6 +63,9 @@ begin ...@@ -63,6 +63,9 @@ begin
raise; //EXDataHttpException.Create(500, 'Unable to create Auth database: A KGOrders Server Error has occured!'); raise; //EXDataHttpException.Create(500, 'Unable to create Auth database: A KGOrders Server Error has occured!');
end; end;
end; end;
end; end;
...@@ -93,7 +96,7 @@ begin ...@@ -93,7 +96,7 @@ begin
Result.AddPair('error', Result.AddPair('error',
'webApp version mismatch' + sLineBreak + ' Client version: ' + clientVersion + 'webApp version mismatch' + sLineBreak + ' Client version: ' + clientVersion +
sLineBreak + ' Server version: ' + webClientVersion + sLineBreak + ' Server version: ' + webClientVersion +
sLineBreak + 'Please click button to clear cache and reload.'); sLineBreak + 'Please clear cache and reload.');
end; end;
finally finally
iniFile.Free; iniFile.Free;
......
...@@ -156,15 +156,15 @@ var ...@@ -156,15 +156,15 @@ var
colorArray: TJSONArray; colorArray: TJSONArray;
colorsObject, colorObject: TJSONObject; colorsObject, colorObject: TJSONObject;
colorsString: string; colorsString: string;
i: Integer; i, maxColors: Integer;
begin begin
logger.Log( 5, 'TrptOrderCorrugated.PopulateColorTable' ); logger.Log( 5, 'TrptOrderCorrugated.PopulateColorTable' );
maxColors := 13;
colorsString := uqOrderCorrugated.FieldByName('colors_colors').AsString; colorsString := uqOrderCorrugated.FieldByName('colors_colors').AsString;
colorsObject := TJSONObject.ParseJSONValue(colorsString) as TJSONObject; colorsObject := TJSONObject.ParseJSONValue(colorsString) as TJSONObject;
colorArray := TJSONArray(colorsObject.GetValue<TJSONArray>('items')); colorArray := TJSONArray(colorsObject.GetValue<TJSONArray>('items'));
for i := 0 to colorArray.Count - 1 do for i := 0 to maxColors - 1 do
begin begin
row := frxOrderCorrugated.FindObject('ColorRow' + IntToStr(i + 1)) as TfrxCustomTableRow; row := frxOrderCorrugated.FindObject('ColorRow' + IntToStr(i + 1)) as TfrxCustomTableRow;
colorObject := colorArray.Items[i] as TJSONObject; colorObject := colorArray.Items[i] as TJSONObject;
......
...@@ -401,11 +401,10 @@ object rptOrderList: TrptOrderList ...@@ -401,11 +401,10 @@ object rptOrderList: TrptOrderList
Left = 941.480349130000000000 Left = 941.480349130000000000
Top = 7.559060000000000000 Top = 7.559060000000000000
Width = 45.354330710000000000 Width = 45.354330710000000000
Height = 30.236220472440900000 Height = 30.236220470000000000
StretchMode = smActualHeight StretchMode = smActualHeight
ContentScaleOptions.Constraints.MaxIterationValue = 0 ContentScaleOptions.Constraints.MaxIterationValue = 0
ContentScaleOptions.Constraints.MinIterationValue = 0 ContentScaleOptions.Constraints.MinIterationValue = 0
DataField = 'QB_REF_NUM'
DataSet = frxDBOrders DataSet = frxDBOrders
DataSetName = 'frxDBOrders' DataSetName = 'frxDBOrders'
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
...@@ -415,7 +414,7 @@ object rptOrderList: TrptOrderList ...@@ -415,7 +414,7 @@ object rptOrderList: TrptOrderList
Font.Style = [] Font.Style = []
Frame.Typ = [] Frame.Typ = []
Memo.UTF8W = ( Memo.UTF8W = (
'[frxDBOrders."QB_REF_NUM"]') '[frxDBOrders."QB_ORDER_NUM"]')
ParentFont = False ParentFont = False
end end
object Memo56: TfrxMemoView object Memo56: TfrxMemoView
...@@ -1217,11 +1216,6 @@ object rptOrderList: TrptOrderList ...@@ -1217,11 +1216,6 @@ object rptOrderList: TrptOrderList
FieldName = 'PRICE' FieldName = 'PRICE'
Required = True Required = True
end end
object uqOrdersQB_REF_NUM: TStringField
FieldName = 'QB_REF_NUM'
ReadOnly = True
Size = 24
end
object uqOrdersCOLORS: TStringField object uqOrdersCOLORS: TStringField
FieldKind = fkCalculated FieldKind = fkCalculated
FieldName = 'COLORS' FieldName = 'COLORS'
...@@ -1271,6 +1265,10 @@ object rptOrderList: TrptOrderList ...@@ -1271,6 +1265,10 @@ object rptOrderList: TrptOrderList
object uqOrdersORDER_DATE: TDateField object uqOrdersORDER_DATE: TDateField
FieldName = 'ORDER_DATE' FieldName = 'ORDER_DATE'
end end
object uqOrdersQB_ORDER_NUM: TStringField
FieldName = 'QB_ORDER_NUM'
Size = 50
end
end end
object frxDBOrders: TfrxDBDataset object frxDBOrders: TfrxDBDataset
UserName = 'frxDBOrders' UserName = 'frxDBOrders'
...@@ -1280,6 +1278,126 @@ object rptOrderList: TrptOrderList ...@@ -1280,6 +1278,126 @@ object rptOrderList: TrptOrderList
DataSetOptions = [] DataSetOptions = []
Left = 444 Left = 444
Top = 232 Top = 232
FieldDefs = <
item
FieldName = 'ORDER_ID'
end
item
FieldName = 'Loc'
FieldType = fftString
Size = 16
end
item
FieldName = 'COMPANY_NAME'
FieldType = fftString
Size = 90
end
item
FieldName = 'JOB_NAME'
FieldType = fftString
Size = 128
end
item
FieldName = 'ORDER_TYPE'
FieldType = fftString
Size = 45
end
item
FieldName = 'PROOF_DUE'
FieldType = fftDateTime
end
item
FieldName = 'PROOF_DONE'
FieldType = fftDateTime
end
item
FieldName = 'ART_DUE'
FieldType = fftDateTime
end
item
FieldName = 'ART_DONE'
FieldType = fftDateTime
end
item
FieldName = 'PLATE_DUE'
FieldType = fftDateTime
end
item
FieldName = 'PLATE_DONE'
FieldType = fftDateTime
end
item
FieldName = 'MOUNT_DUE'
FieldType = fftDateTime
end
item
FieldName = 'MOUNT_DONE'
FieldType = fftDateTime
end
item
FieldName = 'SHIP_DUE'
FieldType = fftDateTime
end
item
FieldName = 'SHIP_DONE'
FieldType = fftDateTime
end
item
FieldName = 'PRICE'
end
item
FieldName = 'COLORS'
FieldType = fftString
end
item
FieldName = 'po_number'
FieldType = fftString
Size = 16
end
item
FieldName = 'quickbooks_item'
FieldType = fftString
Size = 45
end
item
FieldName = 'NEW_ORDER_DATE'
FieldType = fftString
Size = 20
end
item
FieldName = 'NEW_PROOF_DONE'
FieldType = fftString
Size = 20
end
item
FieldName = 'NEW_ART_DONE'
FieldType = fftString
Size = 20
end
item
FieldName = 'NEW_PLATE_DONE'
FieldType = fftString
Size = 20
end
item
FieldName = 'NEW_MOUNT_DONE'
FieldType = fftString
Size = 20
end
item
FieldName = 'NEW_SHIP_DONE'
FieldType = fftString
Size = 20
end
item
FieldName = 'ORDER_DATE'
FieldType = fftDateTime
end
item
FieldName = 'QB_ORDER_NUM'
FieldType = fftString
Size = 50
end>
end end
object uqColors: TUniQuery object uqColors: TUniQuery
Connection = ucKG Connection = ucKG
......
...@@ -30,7 +30,6 @@ type ...@@ -30,7 +30,6 @@ type
uqOrdersSHIP_DUE: TDateField; uqOrdersSHIP_DUE: TDateField;
uqOrdersSHIP_DONE: TDateTimeField; uqOrdersSHIP_DONE: TDateTimeField;
uqOrdersPRICE: TFloatField; uqOrdersPRICE: TFloatField;
uqOrdersQB_REF_NUM: TStringField;
uqOrdersCOLORS: TStringField; uqOrdersCOLORS: TStringField;
uqColors: TUniQuery; uqColors: TUniQuery;
uqOrderspo_number: TStringField; uqOrderspo_number: TStringField;
...@@ -42,6 +41,7 @@ type ...@@ -42,6 +41,7 @@ type
uqOrdersNEW_MOUNT_DONE: TStringField; uqOrdersNEW_MOUNT_DONE: TStringField;
uqOrdersNEW_SHIP_DONE: TStringField; uqOrdersNEW_SHIP_DONE: TStringField;
uqOrdersORDER_DATE: TDateField; uqOrdersORDER_DATE: TDateField;
uqOrdersQB_ORDER_NUM: TStringField;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
procedure uqOrdersCalcFields(DataSet: TDataSet); procedure uqOrdersCalcFields(DataSet: TDataSet);
......
...@@ -155,15 +155,16 @@ var ...@@ -155,15 +155,16 @@ var
colorArray: TJSONArray; colorArray: TJSONArray;
colorsObject, colorObject: TJSONObject; colorsObject, colorObject: TJSONObject;
colorsString: string; colorsString: string;
i: Integer; i, maxColors: Integer;
begin begin
maxColors := 10;
logger.Log( 5, 'TrptOrderWeb.PopulateColorTable' ); logger.Log( 5, 'TrptOrderWeb.PopulateColorTable' );
colorsString := uqOrderWeb.FieldByName('quantity_and_colors_qty_colors').AsString; colorsString := uqOrderWeb.FieldByName('quantity_and_colors_qty_colors').AsString;
colorsObject := TJSONObject.ParseJSONValue(colorsString) as TJSONObject; colorsObject := TJSONObject.ParseJSONValue(colorsString) as TJSONObject;
colorArray := TJSONArray(colorsObject.GetValue<TJSONArray>('items')); colorArray := TJSONArray(colorsObject.GetValue<TJSONArray>('items'));
for i := 0 to colorArray.Count - 1 do for i := 0 to maxColors - 1 do
begin begin
row := frxOrderWeb.FindObject('ColorRow' + IntToStr(i + 1)) as TfrxCustomTableRow; row := frxOrderWeb.FindObject('ColorRow' + IntToStr(i + 1)) as TfrxCustomTableRow;
colorObject := colorArray.Items[i] as TJSONObject; colorObject := colorArray.Items[i] as TJSONObject;
......
...@@ -114,11 +114,11 @@ ...@@ -114,11 +114,11 @@
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<DCC_ExeOutput>.\bin</DCC_ExeOutput> <DCC_ExeOutput>.\bin</DCC_ExeOutput>
<DCC_UnitSearchPath>C:\RADTOOLS\FastMM4;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_UnitSearchPath>C:\RADTOOLS\FastMM4;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>CompanyName=EM Systems;FileDescription=$(MSBuildProjectName);FileVersion=0.9.15.1;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.11;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=EM Systems;FileDescription=$(MSBuildProjectName);FileVersion=0.9.15.3;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.11;Comments=</VerInfo_Keys>
<VerInfo_MajorVer>0</VerInfo_MajorVer> <VerInfo_MajorVer>0</VerInfo_MajorVer>
<VerInfo_MinorVer>9</VerInfo_MinorVer> <VerInfo_MinorVer>9</VerInfo_MinorVer>
<VerInfo_Release>15</VerInfo_Release> <VerInfo_Release>15</VerInfo_Release>
<VerInfo_Build>1</VerInfo_Build> <VerInfo_Build>3</VerInfo_Build>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode> <AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode>
......
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