Difference between revisions of "Is Numeric"
From MidrangeWiki
DaveLClarkI (talk | contribs) (Created page with "Category:Service Procedures == Summary == The following are the RPG/LE fully free-form definitions and instructions needed for using the {{AN}} service procedure. This se...") |
DaveLClarkI (talk | contribs) (→Summary) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Sample Code]] | ||
[[Category:Service Procedures]] | [[Category:Service Procedures]] | ||
== Summary == | == Summary == | ||
− | The following are the RPG/LE fully free-form definitions and instructions needed for using the {{AN}} service procedure. This service procedure simply allows the caller to validate that a character string is all numeric digits, decimal, and/or sign | + | The following are the RPG/LE fully free-form definitions and instructions needed for using the {{AN}} service procedure. This service procedure simply allows the caller to validate that a character string is all numeric digits, decimal, and/or sign characters—or not. |
+ | {| class="wikitable" | ||
+ | |+ style="padding-left:6px;text-align:left;"|Rule of Thumb | ||
+ | |- | ||
+ | |Sometimes, having a service procedure is simply a means of making code more self-documenting (i.e., easier for others to understand). | ||
+ | |} | ||
− | == Service | + | By [[User:DaveLClarkI|Dave Clark]] |
+ | |||
+ | == Service Prototype == | ||
+ | Place the following in a separate copybook for inclusion in both the caller and the service program source members. | ||
<pre> | <pre> | ||
**free | **free | ||
Line 14: | Line 23: | ||
pString varchar(50) const; | pString varchar(50) const; | ||
end-pr; | end-pr; | ||
+ | </pre> | ||
+ | |||
+ | == Service Procedure == | ||
+ | Place the following in a service program source member. | ||
+ | <pre> | ||
+ | **free | ||
+ | ctl-opt NoMain AlwNull(*UsrCtl) Debug Option(*SrcStmt:*NoDebugIo) | ||
+ | DatFmt(*ISO) TimFmt(*ISO); | ||
//============================================================================== | //============================================================================== |
Latest revision as of 16:35, 17 December 2018
Summary
The following are the RPG/LE fully free-form definitions and instructions needed for using the Is Numeric service procedure. This service procedure simply allows the caller to validate that a character string is all numeric digits, decimal, and/or sign characters—or not.
Sometimes, having a service procedure is simply a means of making code more self-documenting (i.e., easier for others to understand). |
By Dave Clark
Service Prototype
Place the following in a separate copybook for inclusion in both the caller and the service program source members.
**free //============================================================================== // Validates variable-length character string for numerics only. // Returns a Boolean true/false value as a result. //============================================================================== dcl-pr GenUtl_isNumeric ind; pString varchar(50) const; end-pr;
Service Procedure
Place the following in a service program source member.
**free ctl-opt NoMain AlwNull(*UsrCtl) Debug Option(*SrcStmt:*NoDebugIo) DatFmt(*ISO) TimFmt(*ISO); //============================================================================== // Validates variable-length character string for numerics only. // Returns a Boolean true/false value as a result. //============================================================================== dcl-proc GenUtl_isNumeric export; dcl-pi *n ind; pString varchar(50) const; end-pi; dcl-c GenUtl_Numeric '0123456789.+-'; if %len(pString) = *zero; // if no supplied value return *off; // indicate not numeric endif; return (%check(GenUtl_Numeric: pString) = *zero); // return result of check end-proc;