Here is a BPM that someone posted a while back that checks and acts at the
SalesOrder.Update level.
--------------------------
/* Put Customer on Credit Hold if they have open invoice (net of credits)
over 60 days old */
for each ttOrderHed where (ttOrderHed.RowMod = "A" or ttOrderHed.RowMod =
"U") no-lock.
Find Customer Where Customer.Company = "ICC" and Customer.CustNum =
ttOrderHed.CustNum no-lock.
If Customer.CreditHold = False Then do:
Define variable Bal as decimal init 0 no-undo.
for each InvcHead where InvcHead.Company = "ICC" and InvcHead.Posted =
True and InvcHead.CustNum = ttOrderHed.CustNum and
InvcHead.OpenInvoice = True no-lock.
/* accumulate all credits and invoices over 60 days and all credits*/
If ( InvcHead.InvoiceDate < Today - 61 ) or (InvcHead.InvoiceBal < 0 )
Then Assign Bal = Bal + InvcHead.InvoiceBal.
End. /* for each InvcHead */
If Bal > 5 Then do:
Find Customer where Customer.Company = "ICC" and Customer.CustNum
= ttOrderHed.CustNum exclusive-lock. If Customer.CreditHold <> True Then
do:
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHold",True).
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHoldDate",Today).
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHoldSource","Over 60 Days (BPM)").
End. /* do <> True */
End. /*do Bal > 5 */
End. /* CreditHold = False */
End. /* each ttOrderHed */
----------------------
Ross
-----Original Message-----
From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf Of
Brian W. Spolarich
Sent: Friday, May 15, 2009 1:45 PM
To: vantage@yahoogroups.com
Subject: RE: [Vantage] Automatically credit hold an account
Completely off the top of my head, seems like the right way to do this
would be to have a nightly job that did a FIND on invoices where the
InvoiceBalance was > 0 and DueDate + 60 < today's date, and then you'd
update the customer's status to be on credit hold. I've seen enough 4GL
examples on the group lately I could cobble this together.
I was curious about this, and you can create a process set, attach things
to it, and that to a System Agent schedule.
The question is, is there some place in Vantage where you can "hang" the
invocation of a user-defined 4GL program that you can attach to a process
set or schedule?
You really want to do this in a batch, offline manner since otherwise
you'd have to add the BPM 'check for aged invoices > 60 days' all over the
system since the credit hold condition impacts a number of places.
Technically BPM's aren't "supposed" to let you modify data (I think that's
what the whole user-defined holds system are about), but folks have posted
"workarounds" that let you accomplish that.
Obviously I'm not being usefully specific here, but I'm intrigued by this
as this question has come up here as well.
-bws
--
Brian W. Spolarich ~ Manager, Information Services ~ Advanced Photonix /
Picometrix
    bspolarich@... ~ 734-864-5618 ~
www.advancedphotonix.com
-----Original Message-----
From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf Of
Matt Caldwell
Sent: Friday, May 15, 2009 2:22 PM
To: vantage@yahoogroups.com
Subject: [Vantage] Automatically credit hold an account
Does anyone out there have some way to automatically put an account on
credit hold when any invoice becomes over 60 days past due?
Matt Caldwell
Technical Support Analyst
KERUSSO
P.O. Box 32
Berryville, AR 72616
Phone: 800-424-0943 Ext. 295 or 870-480-4530
Fax: 870-423-3568
Web Site: http://www.kerusso.com
******************************************************************
CONFIDENTIALITY STATEMENT:
This message, from Kerusso Inc., contains information
which is privileged and confidential and is solely for the use of
the intended recipient. If you are not the intended recipient, be
aware that any review, disclosure, copying, distribution, or use
of the contents of this message is strictly prohibited. If you have
received this in error, please destroy it and notify us immediately
at: 800-424-0943
******************************************************************
[Non-text portions of this message have been removed]
------------------------------------
Useful links for the Yahoo!Groups Vantage Board are: ( Note: You must have
already linked your email address to a yahoo id to enable access. )
(1) To access the Files Section of our Yahoo!Group for Report Builder and
Crystal Reports and other 'goodies', please goto:
http://groups.yahoo.com/group/vantage/files/.
(2) To search through old msg's goto:
http://groups.yahoo.com/group/vantage/messages
(3) To view links to Vendors that provide Vantage services goto:
http://groups.yahoo.com/group/vantage/linksYahoo! Groups Links
------------------------------------
Useful links for the Yahoo!Groups Vantage Board are: ( Note: You must have
already linked your email address to a yahoo id to enable access. )
(1) To access the Files Section of our Yahoo!Group for Report Builder and
Crystal Reports and other 'goodies', please goto:
http://groups.yahoo.com/group/vantage/files/.
(2) To search through old msg's goto:
http://groups.yahoo.com/group/vantage/messages
(3) To view links to Vendors that provide Vantage services goto:
http://groups.yahoo.com/group/vantage/linksYahoo! Groups Links
SalesOrder.Update level.
--------------------------
/* Put Customer on Credit Hold if they have open invoice (net of credits)
over 60 days old */
for each ttOrderHed where (ttOrderHed.RowMod = "A" or ttOrderHed.RowMod =
"U") no-lock.
Find Customer Where Customer.Company = "ICC" and Customer.CustNum =
ttOrderHed.CustNum no-lock.
If Customer.CreditHold = False Then do:
Define variable Bal as decimal init 0 no-undo.
for each InvcHead where InvcHead.Company = "ICC" and InvcHead.Posted =
True and InvcHead.CustNum = ttOrderHed.CustNum and
InvcHead.OpenInvoice = True no-lock.
/* accumulate all credits and invoices over 60 days and all credits*/
If ( InvcHead.InvoiceDate < Today - 61 ) or (InvcHead.InvoiceBal < 0 )
Then Assign Bal = Bal + InvcHead.InvoiceBal.
End. /* for each InvcHead */
If Bal > 5 Then do:
Find Customer where Customer.Company = "ICC" and Customer.CustNum
= ttOrderHed.CustNum exclusive-lock. If Customer.CreditHold <> True Then
do:
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHold",True).
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHoldDate",Today).
run lib\UpdateTableBuffer.p(input BUFFER
Customer:HANDLE,"CreditHoldSource","Over 60 Days (BPM)").
End. /* do <> True */
End. /*do Bal > 5 */
End. /* CreditHold = False */
End. /* each ttOrderHed */
----------------------
Ross
-----Original Message-----
From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf Of
Brian W. Spolarich
Sent: Friday, May 15, 2009 1:45 PM
To: vantage@yahoogroups.com
Subject: RE: [Vantage] Automatically credit hold an account
Completely off the top of my head, seems like the right way to do this
would be to have a nightly job that did a FIND on invoices where the
InvoiceBalance was > 0 and DueDate + 60 < today's date, and then you'd
update the customer's status to be on credit hold. I've seen enough 4GL
examples on the group lately I could cobble this together.
I was curious about this, and you can create a process set, attach things
to it, and that to a System Agent schedule.
The question is, is there some place in Vantage where you can "hang" the
invocation of a user-defined 4GL program that you can attach to a process
set or schedule?
You really want to do this in a batch, offline manner since otherwise
you'd have to add the BPM 'check for aged invoices > 60 days' all over the
system since the credit hold condition impacts a number of places.
Technically BPM's aren't "supposed" to let you modify data (I think that's
what the whole user-defined holds system are about), but folks have posted
"workarounds" that let you accomplish that.
Obviously I'm not being usefully specific here, but I'm intrigued by this
as this question has come up here as well.
-bws
--
Brian W. Spolarich ~ Manager, Information Services ~ Advanced Photonix /
Picometrix
    bspolarich@... ~ 734-864-5618 ~
www.advancedphotonix.com
-----Original Message-----
From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf Of
Matt Caldwell
Sent: Friday, May 15, 2009 2:22 PM
To: vantage@yahoogroups.com
Subject: [Vantage] Automatically credit hold an account
Does anyone out there have some way to automatically put an account on
credit hold when any invoice becomes over 60 days past due?
Matt Caldwell
Technical Support Analyst
KERUSSO
P.O. Box 32
Berryville, AR 72616
Phone: 800-424-0943 Ext. 295 or 870-480-4530
Fax: 870-423-3568
Web Site: http://www.kerusso.com
******************************************************************
CONFIDENTIALITY STATEMENT:
This message, from Kerusso Inc., contains information
which is privileged and confidential and is solely for the use of
the intended recipient. If you are not the intended recipient, be
aware that any review, disclosure, copying, distribution, or use
of the contents of this message is strictly prohibited. If you have
received this in error, please destroy it and notify us immediately
at: 800-424-0943
******************************************************************
[Non-text portions of this message have been removed]
------------------------------------
Useful links for the Yahoo!Groups Vantage Board are: ( Note: You must have
already linked your email address to a yahoo id to enable access. )
(1) To access the Files Section of our Yahoo!Group for Report Builder and
Crystal Reports and other 'goodies', please goto:
http://groups.yahoo.com/group/vantage/files/.
(2) To search through old msg's goto:
http://groups.yahoo.com/group/vantage/messages
(3) To view links to Vendors that provide Vantage services goto:
http://groups.yahoo.com/group/vantage/linksYahoo! Groups Links
------------------------------------
Useful links for the Yahoo!Groups Vantage Board are: ( Note: You must have
already linked your email address to a yahoo id to enable access. )
(1) To access the Files Section of our Yahoo!Group for Report Builder and
Crystal Reports and other 'goodies', please goto:
http://groups.yahoo.com/group/vantage/files/.
(2) To search through old msg's goto:
http://groups.yahoo.com/group/vantage/messages
(3) To view links to Vendors that provide Vantage services goto:
http://groups.yahoo.com/group/vantage/linksYahoo! Groups Links