Globalizing it would be more prudent if your apps will need to have access to the same data from different modules.
If, however, you plan on using the data in only one module, you should make it 'locally' global
See & test the following example for yourself. It may help you get a better grasp on your delima.
TYPE Person
IsMale AS INTEGER
FirstName AS STRING * 20
END TYPE
DIM Human AS Person
DECLARE SUB EnterMe (WholeThing AS Person)
DECLARE SUB CheckMe (WholeThing AS Person)
EnterMe Human
CheckMe Human
END
SUB CheckMe (WholeThing AS Person)
PRINT
PRINT "++++++++++++++ In CheckMe sub now +++++++++++++"
PRINT
PRINT "The name "; WholeThing.FirstName
IF WholeThing.IsMale THEN
PRINT "This is a MALE"
ELSE
PRINT "This is a FEMALE"
END IF
PRINT
END SUB
SUB EnterMe (WholeThing AS Person)
CLS
PRINT "++++++++++++++ In EnterMe sub now +++++++++++++"
PRINT
INPUT "First Name: "; WholeThing.FirstName
INPUT "Is this Man: (1=y,0=n) "; WholeThing.IsMale
END SUB
If you plan on sharing this data across other modules you create later on, then use ALT255's suggestion. --MiggyD
Never be afraid to try something new. Remember that amateurs built the Ark. Professionals built the Titanic.
If you look at the first response I gave, you'll see the syntax to do what MiggyD said. To use the word CALL (which isn't really necessary), using the example I gave, you'd use:
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.