Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
kgOrders
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Cam Hayes
kgOrders
Commits
1f190ab3
Commit
1f190ab3
authored
Oct 22, 2025
by
Elias Sarraf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add revision notes and audit tracking for adding to QB. Also added pdf for DB update steps
parent
9b92df15
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
70 additions
and
28 deletions
+70
-28
Steps to Update KGOrders Database.pdf
Steps to Update KGOrders Database.pdf
+0
-0
View.OrderEntryCorrugated.pas
kgOrdersClient/View.OrderEntryCorrugated.pas
+10
-2
View.OrderEntryCuttingDie.pas
kgOrdersClient/View.OrderEntryCuttingDie.pas
+10
-3
View.OrderEntryWeb.pas
kgOrdersClient/View.OrderEntryWeb.pas
+11
-4
webKGOrders.dproj
kgOrdersClient/webKGOrders.dproj
+11
-1
Lookup.ServiceImpl.pas
kgOrdersServer/Source/Lookup.ServiceImpl.pas
+11
-11
kgOrdersServer.dproj
kgOrdersServer/kgOrdersServer.dproj
+11
-1
kgOrdersServer.ini
kgOrdersServer/kgOrdersServer.ini
+6
-6
No files found.
Steps to Update KGOrders Database.pdf
0 → 100644
View file @
1f190ab3
File added
kgOrdersClient/View.OrderEntryCorrugated.pas
View file @
1f190ab3
...
...
@@ -242,6 +242,7 @@ type
changed
:
boolean
;
notification
:
string
;
customer_qb_id
:
string
;
REVISION_NOTES
:
string
;
procedure
RemoveColorRow
(
Sender
:
TObject
);
[
async
]
procedure
InitializeForm
;
[
async
]
procedure
AddEstimate
(
orderID
:
string
);
...
...
@@ -318,7 +319,7 @@ begin
notification
:=
TJSObject
(
Response
.
Result
);
msg
:=
string
(
notification
[
'status'
]);
Utils
.
HideSpinner
(
'spinner'
);
getOrder
(
orderID
);
getOrder
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
ShowToast
(
msg
);
except
...
...
@@ -341,6 +342,7 @@ begin
xdwdsOrder
.
FieldByName
(
'IN_QB'
).
AsString
:=
'F'
;
xdwdsOrder
.
FieldByName
(
'QB_ORDER_NUM'
).
AsString
:=
''
;
REVISION_NOTES
:=
'Order was copied from ORDER_ID: '
+
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
;
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
:=
''
;
xdwdsOrder
.
Post
;
EditMode
();
...
...
@@ -384,6 +386,8 @@ end;
procedure
TFOrderEntryCorrugated
.
btnQBClick
(
Sender
:
TObject
);
var
orderJSON
:
TJSONObject
;
begin
if
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_qb_id'
])
<>
''
then
begin
...
...
@@ -392,7 +396,10 @@ begin
if
wdbcbINQB
.
Checked
=
false
then
begin
Utils
.
ShowSpinner
(
'spinner'
);
addEstimate
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
:=
TJSONObject
.
Create
;
orderJSON
.
AddPair
(
'ORDER_ID'
,
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
.
AddPair
(
'USER_ID'
,
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_id'
]));
addEstimate
(
orderJSON
.
ToString
);
end
else
ShowToast
(
'Failure:Cannot submit orders already in QuickBooks'
,
'failure'
);
...
...
@@ -495,6 +502,7 @@ begin
end
;
orderJSON
.
AddPair
(
'mode'
,
mode
);
orderJSON
.
AddPair
(
'REVISION_NOTES'
,
REVISION_NOTES
);
Response
:=
await
(
XDataWebClient1
.
RawInvokeAsync
(
'ILookupService.AddCorrugatedOrder'
,
[
orderJSON
.
ToString
]));
...
...
kgOrdersClient/View.OrderEntryCuttingDie.pas
View file @
1f190ab3
...
...
@@ -114,6 +114,7 @@ type
customer_qb_id
:
string
;
mode
:
string
;
notification
:
string
;
REVISION_NOTES
:
string
;
procedure
EditMode
;
[
async
]
procedure
InitializeForm
;
public
...
...
@@ -179,7 +180,7 @@ begin
notification
:=
TJSObject
(
Response
.
Result
);
msg
:=
string
(
notification
[
'status'
]);
Utils
.
HideSpinner
(
'spinner'
);
getCuttingDieOrder
(
orderID
);
getCuttingDieOrder
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
ShowToast
(
msg
);
except
...
...
@@ -189,6 +190,8 @@ begin
end
;
procedure
TFOrderEntryCuttingDie
.
btnQBClick
(
Sender
:
TObject
);
var
orderJSON
:
TJSONObject
;
begin
if
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_qb_id'
])
<>
''
then
begin
...
...
@@ -197,7 +200,10 @@ begin
if
wdbcbINQB
.
Checked
=
false
then
begin
Utils
.
ShowSpinner
(
'spinner'
);
addEstimate
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
:=
TJSONObject
.
Create
;
orderJSON
.
AddPair
(
'ORDER_ID'
,
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
.
AddPair
(
'USER_ID'
,
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_id'
]));
addEstimate
(
orderJSON
.
ToString
);
end
else
ShowToast
(
'Failure:Cannot submit orders already in QuickBooks'
,
'failure'
);
...
...
@@ -296,7 +302,7 @@ begin
xdwdsOrder
.
FieldByName
(
'staff_fields_ship_date'
).
AsDateTime
:=
0
;
xdwdsOrder
.
FieldByName
(
'IN_QB'
).
AsString
:=
'F'
;
xdwdsOrder
.
FieldByName
(
'QB_ORDER_NUM'
).
AsString
:=
''
;
REVISION_NOTES
:=
'Order was copied from ORDER_ID: '
+
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
;
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
:=
''
;
xdwdsOrder
.
Post
;
ShowToast
(
'Success: Order Successfully Copied'
);
...
...
@@ -410,6 +416,7 @@ begin
end
;
orderJSON
.
AddPair
(
'mode'
,
mode
);
orderJSON
.
AddPair
(
'REVISION_NOTES'
,
REVISION_NOTES
);
try
Response
:=
await
(
XDataWebClient1
.
RawInvokeAsync
(
'ILookupService.AddCuttingDieOrder'
,
...
...
kgOrdersClient/View.OrderEntryWeb.pas
View file @
1f190ab3
...
...
@@ -249,6 +249,7 @@ type
mode
:
string
;
notification
:
string
;
customer_qb_id
:
string
;
REVISION_NOTES
:
string
;
procedure
RemoveColorRow
(
Sender
:
TObject
);
[
async
]
procedure
InitializeForm
;
//FJSONProc1: TJSONProc1;
...
...
@@ -404,6 +405,7 @@ begin
xdwdsOrder
.
FieldByName
(
'IN_QB'
).
AsString
:=
'F'
;
xdwdsOrder
.
FieldByName
(
'QB_ORDER_NUM'
).
AsString
:=
''
;
REVISION_NOTES
:=
'Order was copied from ORDER_ID: '
+
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
;
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
:=
''
;
xdwdsOrder
.
Post
;
EditMode
();
...
...
@@ -449,6 +451,8 @@ begin
end
;
procedure
TFOrderEntryWeb
.
btnQBClick
(
Sender
:
TObject
);
var
orderJSON
:
TJSONObject
;
begin
if
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_qb_id'
])
<>
''
then
begin
...
...
@@ -457,7 +461,10 @@ begin
if
wdbcbINQB
.
Checked
=
false
then
begin
Utils
.
ShowSpinner
(
'spinner'
);
addEstimate
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
:=
TJSONObject
.
Create
;
orderJSON
.
AddPair
(
'ORDER_ID'
,
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
orderJSON
.
AddPair
(
'USER_ID'
,
JS
.
toString
(
AuthService
.
TokenPayload
.
Properties
[
'user_id'
]));
addEstimate
(
orderJSON
.
ToString
);
end
else
ShowToast
(
'Failure:Cannot submit orders already in QuickBooks'
,
'failure'
);
...
...
@@ -479,7 +486,7 @@ begin
notification
:=
TJSObject
(
Response
.
Result
);
msg
:=
string
(
notification
[
'status'
]);
Utils
.
HideSpinner
(
'spinner'
);
getOrder
(
orderID
);
getOrder
(
xdwdsOrder
.
FieldByName
(
'ORDER_ID'
).
AsString
);
ShowToast
(
msg
);
except
...
...
@@ -575,9 +582,9 @@ begin
end
;
xdwdsOrder
.
Next
;
end
;
orderJSON
.
AddPair
(
'mode'
,
mode
);
console
.
log
(
orderJSON
);
orderJSON
.
AddPair
(
'mode'
,
mode
);
orderJSON
.
AddPair
(
'REVISION_NOTES'
,
REVISION_NOTES
);
try
Response
:=
await
(
XDataWebClient1
.
RawInvokeAsync
(
'ILookupService.AddWebOrder'
,
[
orderJSON
.
ToString
]));
...
...
kgOrdersClient/webKGOrders.dproj
View file @
1f190ab3
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{DB6F5DBF-7E4B-45DA-AFFA-6C8DF15BA740}</ProjectGuid>
<ProjectVersion>20.
2
</ProjectVersion>
<ProjectVersion>20.
3
</ProjectVersion>
<FrameworkType>VCL</FrameworkType>
<MainSource>webKGOrders.dpr</MainSource>
<Base>True</Base>
...
...
@@ -432,6 +432,16 @@
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStylesV35">
<Platform Name="Android">
<RemoteDir>res\values-v35</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values-v35</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_AdaptiveIcon">
<Platform Name="Android">
<RemoteDir>res\drawable-anydpi-v26</RemoteDir>
...
...
kgOrdersServer/Source/Lookup.ServiceImpl.pas
View file @
1f190ab3
...
...
@@ -124,7 +124,7 @@ var
TxnTaxCodeRef
:
TJSONObject
;
TxnTaxDetail
:
TJSONObject
;
JSONData
:
TJSONObject
;
ORDER_ID
,
companyID
,
RefreshToken
,
AccessToken
:
string
;
ORDER_ID
,
companyID
,
RefreshToken
,
AccessToken
,
USER_ID
:
string
;
table
,
msg
:
string
;
ShipMethodRef
:
TJSONObject
;
LastRefresh
:
TDateTime
;
...
...
@@ -148,7 +148,13 @@ begin
Logger
.
Log
(
3
,
'TLookupService.AddEstimate'
);
try
try
ORDER_ID
:=
orderInfo
;
JSONData
:=
TJSONObject
.
ParseJSONValue
(
orderInfo
)
as
TJSONObject
;
if
JSONData
=
nil
then
raise
Exception
.
Create
(
'Invalid JSON format'
);
ORDER_ID
:=
JSONData
.
GetValue
<
string
>(
'ORDER_ID'
);
USER_ID
:=
JSONData
.
GetValue
<
string
>(
'USER_ID'
);
SQL
:=
'select * from orders where ORDER_ID = '
+
ORDER_ID
;
doQuery
(
ordersDB
.
UniQuery1
,
SQL
);
if
ordersDB
.
UniQuery1
.
FieldByName
(
'ORDER_TYPE'
).
AsString
=
'corrugated_plate'
then
...
...
@@ -281,8 +287,6 @@ begin
restRequest
.
Execute
;
//memo1.Lines.Add(restresponse.Content);
jsValue
:=
restResponse
.
JSONValue
;
jsObj
:=
TJSONObject
(
jsValue
).
GetValue
<
TJSONObject
>(
'Estimate'
);
...
...
@@ -295,6 +299,7 @@ begin
ordersDB
.
UniQuery1
.
FieldByName
(
'QB_ORDER_NUM'
).
AsString
:=
jsObj
.
GetValue
<
string
>(
'DocNumber'
);
ordersDB
.
UniQuery1
.
FieldByName
(
'QB_ESTIMATE_ID'
).
AsString
:=
jsObj
.
GetValue
<
string
>(
'Id'
);
ordersDB
.
UniQuery1
.
FieldByName
(
'QB_CREATE_DATE'
).
AsDateTime
:=
Now
;
ordersDB
.
UniQuery1
.
FieldByName
(
'QB_ORDER_USER'
).
AsString
:=
USER_ID
;
ordersDB
.
UniQuery1
.
Post
;
result
:=
TJSONObject
.
Create
;
...
...
@@ -2597,8 +2602,6 @@ begin
doQuery
(
OrdersDB
.
UniQuery1
,
SQL
);
RevisionID
:=
OrdersDB
.
UniQuery1
.
FieldByName
(
'KEYVALUE'
).
AsInteger
;
// Begin Area where we could replace this with marks code(need to convert from c++
SQL
:=
'select * from '
+
table
+
' where ORDER_ID = -1'
;
doQuery
(
ordersDB
.
UniQuery1
,
SQL
);
...
...
@@ -2618,19 +2621,16 @@ begin
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
;
ordersDB
.
UniQuery1
.
FieldByName
(
'ORDER_DATE'
).
AsDateTime
:=
Now
;
// End Area
ordersDB
.
UniQuery1
.
FieldByName
(
'ORDER_STATUS'
).
AsString
:=
'ACTIVE'
;
ordersDB
.
UniQuery1
.
FieldByName
(
'REVISION_NUMBER'
).
AsInteger
:=
rev_num
;
ordersDB
.
UniQuery1
.
FieldByName
(
'ORDER_REVISION_ID'
).
AsInteger
:=
RevisionID
;
ordersDB
.
UniQuery1
.
FieldByName
(
'REVISION_USER_ID'
).
AsString
:=
order
.
GetValue
<
string
>(
'USER_ID'
);
// Post the record to the database
ordersDB
.
UniQuery1
.
Post
;
end
;
...
...
kgOrdersServer/kgOrdersServer.dproj
View file @
1f190ab3
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{2A3028D9-BC39-4625-9BA5-0338012E2824}</ProjectGuid>
<ProjectVersion>20.
2
</ProjectVersion>
<ProjectVersion>20.
3
</ProjectVersion>
<FrameworkType>VCL</FrameworkType>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Debug</Config>
...
...
@@ -355,6 +355,16 @@
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStylesV35">
<Platform Name="Android">
<RemoteDir>res\values-v35</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values-v35</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_AdaptiveIcon">
<Platform Name="Android">
<RemoteDir>res\drawable-anydpi-v26</RemoteDir>
...
...
kgOrdersServer/kgOrdersServer.ini
View file @
1f190ab3
...
...
@@ -2,12 +2,12 @@
MemoLogLevel
=
5
FileLogLevel
=
5
webClientVersion
=
1.0.0
LogFileNum
=
9
81
LogFileNum
=
9
93
[Database]
--
Server
=
192.168.159.158
Server
=
192.168.159.158
--Server
=
192.168.102.130
Server
=
192.168.75.133
--
Server
=
192.168.75.133
Database
=
kg_order_entry
Username
=
root
Password
=
emsys01
...
...
@@ -17,6 +17,6 @@ Password=emsys01
CompanyID
=
9341454336461805
ClientID
=
ABYqlDx1EsacZYXvHIJ7RDB7zmnQdwABU3fwQLIZPmBgU0VW1P
ClientSecret
=
PM7OnvQWsgOqjWfDpZAnyRttDN9446Am6d85pDxr
RefreshToken
=
RT1-2
34-H0-1766080860lt6q6wexz5p1797m4pfa
AccessToken
=
eyJhbGciOiJkaXIiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwieC5vcmciOiJIMCJ9..
4Lnl865y7RBKrwAlYrUdZw.-NX4xZUYbruXp8U0WT0guGo_MdrKBVAFacX_wbynpC0-kj48Avrm-c-JVsgU32egu40w_-4OIuo3Zt2dIZ12oCb108eysVI0njIa81noaCmS86tsjM1Lc8mO6O4uEVUiquwtkAKyJcMb16EfcWs05iEHj7alkL5G3O95JvH2xTC-N1rLUAEmPohEk-FJL0gdWKxO1905Q3EdCDCrFImg7WwCdeC3SDG5Ne9DIUIy0FWqA3wRHwOZllBxGT-M3PCpwGvVEcPd7EimdlteijNoIB_F55cRHQYgPGWPS779EVHa7m279rSJXAdL6ZLW76iorTGnXVnhQs162ejQiXIY8FFmTJOQWZxIVLDA44CQfcS4cwpTbDvVveoyZsh9NP4KaRai2fu4llzKB5Miqqjh5AEvX8w66XYhoC9J-lYFu8IBk0YQuVF2E3Vkf4dNwIiaFfgBOj7OR1tR1WCFiT-I5ipI4zS-BZaVFbLtIIYCKX8.0jpvxgPnhLC0gJMFpbfcCA
LastRefresh
=
8/7/2025 12:51:00
PM
RefreshToken
=
RT1-2
-H0-1769887296o3747tv75irrt167rolf
AccessToken
=
eyJhbGciOiJkaXIiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwieC5vcmciOiJIMCJ9..
84BZUCQk1D0zH5dIEEW2zw.tmbh1n6DyHI3Z9BVuuztZNe8Y75GzsC5sMwqrIec0-yfcr9aBxO8FTQOAhpe4JLeZ1M2hatEf430cH_iYvK0lzV5HNl888ZlYiR8yDL4bfUj5PyNXdffmFZ5-yrtVTuC8heBWl_6VJDP0GSZXz5OtiG_0-Tn1kY6i6jZvQ1UFu9l7tgwVN-4bxoP2s36e-4llhD8Y-H7WreulFCJ5-k-73ICL5aBi7gn8eX9T3PpXSROyWqHIQ0ph5eOumCeykjaRkWn4GafmZSp20IaWg7Er1gZluzEOGc_TZ_5GkSt1_Bx-JpH9piDioF91BynHgDszIZ3mD18QNmmisVKzO6Z1eBT753RhaPEPa_qruR7oHay0s3RO1PhGf5UpQ4cTP-h0e_2hD02P-x1Svj-zlwDUyiiOrgwyPHiSjiTMv32puMoT-dGrBDWnt0BPp7A5Dle8CgUczw_SAnNZFtQMTZRbKJq8B7URe6M2Fs87HYs1HU.uWftkuUZ_GRIVaAg5k8pLw
LastRefresh
=
10/22/2025 3:52:18
PM
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment