Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

My Introduction Rants And Questions

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    My Introduction Rants And Questions

    Rants & Some Questions.

    My Introduction to the Forum:
    When you program in the same database platform for 14 years, it becomes 2nd nature to you. Also, since I'm now on the backside of 50, I have to struggle with the onset of mental rigor mortise.
    During those 14 yrs. I maintained from the hi 5digit to low 6digit income writing custom one of a kind database applications for picky clients.
    The platform was/is superb and was known in its day as SmartWareII(c).
    The Auto-scripting/Code creation was excellent, and the Code Editor was fast & more than adequate.
    Table/Field management as well as Forms, Queries & Reports were fast to produce, and just as fast to edit.
    The language was full featured, and after all this time I never needed to use more than 70% of what it was capable of doing.
    However, even though it runs in upper (extended memory) it is still DOS based. This was not its only limitation, if you can call it that.
    The real problem is that new hardware has arrived such as USB print ports that this platform never heard of. It knows only LPT's & Com's as print ports. It cannot use the Windows drivers for printing. It knows nothing of DLL's or OLE Objects. Finally, someday Windows versions will not adequately support the DOS environment. Vista is the first attempt to do that.

    So, I had to decide to go with a Win Based platform. I spent time & $$ on Access, Delphi and Alpha5 v5, v6, v7, and recently v8.
    I chose A5v8.
    I'm praying that my decision was the right one, but recently I have had some serious reservations. So right now it's late and I'm pretty frustrated.
    Example:
    When I use Version 6, the Control panel shows:
    Tables/Sets, Forms, Browses, Reports, Letter, Labels, Operations, Code.
    OK.
    When I use Version 8, the Control panel shows:
    Tables/Sets, Layouts, Operations, Code.
    QUESTION: What the heck happened to Forms, Browses, Reports, Letter, Labels in v8 Control Panel?
    Well, I tried to get it show these tabs for about 2hrs, then went back to v6 to finish doing the Form I wanted to create….1st Reservation.
    QUESTION:
    In the code editor/interactive, I inadvertently deleted (not cut) a line. Well, I soon found out there is NO UNDO. If so where is it?…..2nd Reservation.
    QUESTION:
    As part of a calculation the following was used:
    "00+str(a_number) such as "00"+str(9).
    The result was 00 (about 7 spaces) 9.
    What in the world is that? How could an xbasic coder assume that the most likely desired result of concatenating 2 strings in that manner would be to put 7 spaces between them?? I mean, if I wanted exactly 7 or 8 or more spaces poked in, wouldn't I include that weird string myself? So, I needed to add yet another function, Alltrim to get the expected result of 009….3rd Reservation…bizarre results.
    In SmartWareII, one can create 2 types of calculated fields:
    1) A real stored Data Field that has a calculated result in it's code window, usually based on the contents of 1 or more other fields. It can apply globally to any place you put that field, or locally to just a particular form/View.
    2) A Virtual field that is NOT stored anywhere, but only appears on the form /view in which it is placed. It can then have a calculation just like any Real field for that form/view only.
    Well, 2 problems:
    I can't figure out HOW to create a virtual field on a form.
    I can't figure out how to create a calculation for even a real field on a form.
    For instance. This is my first attempt at making a calculation in a field:
    The idea is to create a fixed Character string in a field (called StrBatch) from another Numeric field (called Aseqno) as follows:
    Criteria:
    The Char$ of StrBatch is only allowed to have exactly 3places, no more, no less. But the user can enter any amount in the numeric field up to 9999.
    So, if the Aseqno field is 1, then the calc'd Char$ is 001. If 10 then 010, if 100 then 100, if 1999, then 999, if 9999 then 999 also.
    So, I tried the case()
    In the code editor to "create a calculation" I put:
    Case(Aseqno<1,"ERR", Aseqno<10, "00+ALTRIM(str(Aseqno)), Aseqno<100, "0"+ALLTRIM(str(Aseqno)), Aseqno<1000, ALLTRIM(str(right(Aseqno,3))) ).

    In SmartWareII you would have:
    Case([Aseqno])(<1,"ERR")(<10,"00"|str([Aseqno])(<100,"0"|str([Aseqno])(<1000,Str([Aseqno]) else right(str([Aseqno]),3)
    In A5,
    All I get is "you must put Fieldname = Expression " error message.
    So, I added StrBatch = Case(same stuff)…………)
    That still gave me an error. So, after trying all that I thought would comply, all I got for my efforts & time was more cryptic error messages and never did get the calculation to work. I also wanted it to be IMMEDIATE, no "when passed over, etc." , because this form is NOT for a user entry, but for an export conversion process to a mainframe file reader….4rd Reservation…Little help except for cryptic error messages.
    SmartWareII tells you what is wrong and at what place/point of the formula it is occurring.
    QUESTION:
    HOW do you easily install a virtual field in a form and then give it an immediate calculation formula in less than a lunch hour?

    Last, I know that it is a given that Win based Databases are tremendously bulky and slow compared to DOS based counterparts, with tons of features that will never be used by most, but the baggage gets loaded anyway. That was one big reason I hesitated for so long. They are Soooooo slow in comparison.
    -----------------------
    Your input on questions, and assurance that I didn't make a big mistake in choosing A5 is appreciated in advance.
    Tom
    Dallas
    ps.
    What I like most so far about A5 is this very rich Forum of experts & novices.




    .
    Last edited by SMARTII; 07-19-2007, 02:21 AM.
    First Love

    #2
    Re: My Introduction Rants And Questions

    Hi Tom,

    Answer to question 1 - Right click on the tabs at the top of control panel uncheck layouts, and the old style forms, browses, reports will appear.

    Undo is annoying, hope you find a way around this.

    Will leave the rest to others as very busy day!!

    Comment


      #3
      Re: My Introduction Rants And Questions

      Originally posted by SMARTII View Post
      I'm praying that my decision was the right one,....
      We're obviously a little biased, but I know many, including myself, who would drop A5 in a second if we didn't think it was the best bang for the buck.

      Originally posted by SMARTII View Post
      QUESTION: What the heck happened to Forms, Browses, Reports, Letter, Labels in v8 Control Panel?
      Write click on the tabs of the control panel and unselect Layouts. Basically, you have a choice of seeing all layouts together on 1 tab, or individually

      Originally posted by SMARTII View Post
      QUESTION:
      In the code editor/interactive, I inadvertently deleted (not cut) a line. Well, I soon found out there is NO UNDO. If so where is it?…..2nd Reservation.
      Control Z is the undo for up to 15 levels in XBasic. Are you using Action Scripting?

      Originally posted by SMARTII View Post
      QUESTION:
      As part of a calculation the following was used:
      "00+str(a_number) such as "00"+str(9).
      The result was 00 (about 7 spaces) 9.
      What in the world is that? How could an xbasic coder assume that the most likely desired result of concatenating 2 strings in that manner would be to put 7 spaces between them?? I mean, if I wanted exactly 7 or 8 or more spaces poked in, wouldn't I include that weird string myself? So, I needed to add yet another function, Alltrim to get the expected result of 009….3rd Reservation…bizarre results.
      Str() function by default sets the width of the converted string to 10 padded on the left with spaces. You can adjust the maximum width. My normal code is ltrim(str(number,18)) This is described in the function specification of str(). You can't assume the functions are the same in all languages.

      Originally posted by SMARTII View Post
      In SmartWareII, one can create 2 types of calculated fields:
      1) A real stored Data Field that has a calculated result in it's code window, usually based on the contents of 1 or more other fields. It can apply globally to any place you put that field, or locally to just a particular form/View.
      2) A Virtual field that is NOT stored anywhere, but only appears on the form /view in which it is placed. It can then have a calculation just like any Real field for that form/view only.
      Well, 2 problems:
      I can't figure out HOW to create a virtual field on a form.
      I can't figure out how to create a calculation for even a real field on a form.
      To create a virtual field on a layout (any type), then create a calculated field on that layout. Drag and drop new calculated field or define in menu drop down choice for calculated fields.

      To create a field that is calculated and stored in the data structure, edit the field rules for that table, change the field to calculated and then specify the expression.


      Originally posted by SMARTII View Post
      QUESTION:
      HOW do you easily install a virtual field in a form and then give it an immediate calculation formula in less than a lunch hour?
      No idea what you are saying in the above?

      Originally posted by SMARTII View Post
      Last, I know that it is a given that Win based Databases are tremendously bulky and slow compared to DOS based counterparts, with tons of features that will never be used by most, but the baggage gets loaded anyway. That was one big reason I hesitated for so long. They are Soooooo slow in comparison.
      Speed is not necessarily slower. That's a faliacy (IMHO). They are doing things that many DOS databases never did or couldn't do, including sharing, multiple tables open simultaneously etc. If you had DOS sharing in exactly the same way, it would not be significantly different in speed in going through the tables. You do get slower in the user interface, and initial load times for the program are slower due to increase sizes, but that's not normally a significant issue.

      As far as I can tell, all of your issues are resolvable with a little knowledge. Do some of the self tutorials and that should answer many of your questions. Read the help on specific functions for syntax and details. And ask your questions here (but do the research 1st of the message board or help documents so you can answer your own questions or at least ask the right question.

      Alpha 5 is a very powerful tool that serves both small developers and big time coders. We have a wonderful forum here to get pointers and ask questions, but you have to do some reading too.

      P.S. It's best to ask 1 question/problem per thread, and to place them in the correct forum and having meaningful subject lines so people can decide what to view and answer.
      Last edited by csda1; 07-19-2007, 02:50 AM.
      Regards,

      Ira J. Perlow
      Computer Systems Design


      CSDA A5 Products
      New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
      CSDA Barcode Functions

      CSDA Code Utility
      CSDA Screen Capture


      Comment


        #4
        Re: My Introduction Rants And Questions

        Tom,
        Being still a novice I can figure out aquite a bit but still cannot explain all to others very well!

        But before heading off I thought I would give it a whirl with one of your questions.

        As part of a calculation the following was used:
        "00+str(a_number) such as "00"+str(9).
        The result was 00 (about 7 spaces) 9.
        This I believe can be avoided by the use of a trim function.

        such as "00+ltrim(str(a_number)). I think that you must have your "a_number" as an 8 place numeric or character field. So it makes perfect sense that without trimming the "extra" numbers/characters out of the string you see empty spaces or maybe even zeros.

        Could be wrong but is the first thing I would try.


        Best of luck to you. I am sure others will comment on your other questions, etc when they can.

        Edit: I see one of the best has come to your aid!
        Mike
        __________________________________________
        It is only when we forget all our learning that we begin to know.
        It's not what you look at that matters, it's what you see.
        Henry David Thoreau
        __________________________________________



        Comment


          #5
          Re: My Introduction Rants And Questions

          Tom,

          unzip the attachment to an empty folder. Open Form1. You'll find an example of illustrating the use of a calculated value. I built it without knowing anything about SmartWareII, based solely on your narrative description. I hope it helps get you going.

          BTW, one of the REALLY nice things about this message board is that the "Go Advanced" link in the message editor permits you to "Manage Attachments", so you can upload examples for others to see or work on.

          Comment


            #6
            Re: My Introduction Rants And Questions

            Originally posted by csda1 View Post
            We're obviously a little biased, but I know many, including myself, who would drop A5 in a second if we didn't think it was the best bang for the buck.
            Not to massage or inflate Ira's ego (very unhealthy to say the least), if Ira says it, you can take it to the bank.
            Peter
            AlphaBase Solutions, LLC

            [email protected]
            https://www.alphabasesolutions.com


            Comment


              #7
              Re: My Introduction Rants And Questions

              Originally posted by Peter.Greulich View Post
              Not to massage or inflate Ira's ego (very unhealthy to say the least), if Ira says it, you can take it to the bank.
              Almost.

              Originally Posted by SMARTII
              QUESTION:
              In the code editor/interactive, I inadvertently deleted (not cut) a line. Well, I soon found out there is NO UNDO. If so where is it?�..2nd Reservation.
              Ira's Reply:
              Control Z is the undo for up to 15 levels in XBasic. Are you using Action Scripting?
              There IS an 'Undo" in the Code Editor. There IS NOT in the Interactive Window. Control Z does not 'Undo" in the Interactive Window. I used to write code in the IW. But in the IW if you have code highlighted and hit the Enter key, it deletes the code, and there is no Undo, and because it is several steps to save and retrieve code from the IW, I stopped writing any code there. I generally only write in the code editor now.
              Mike W
              __________________________
              "I rebel in at least small things to express to the world that I have not completely surrendered"

              Comment


                #8
                Re: My Introduction Rants And Questions

                HOW do you easily install a virtual field in a form and then give it an immediate calculation formula in less than a lunch hour?
                Tom,
                A Rich Text Field can hold an expression on a form. I haven't figured out how to get the value FROM an RTF text object into a variable (if it even can), but a RTF will display an inserted calculation.
                Mike W
                __________________________
                "I rebel in at least small things to express to the world that I have not completely surrendered"

                Comment


                  #9
                  Re: My Introduction Rants And Questions

                  Maybe he means input a form level variable and display a form level calc result?
                  Peter
                  AlphaBase Solutions, LLC

                  [email protected]
                  https://www.alphabasesolutions.com


                  Comment


                    #10
                    Re: My Introduction Rants And Questions

                    Tom,

                    Your frustration does show throug. Would suspect a little frustration when you started with your old language too. The hardest part of learning a new language/method is forgetting the old one. I drove race cars and believe me, fords and Chevrolets drive different on a track, but both are capable.


                    I can't figure out HOW to create a virtual field on a form.
                    I believe you are referring to virtual field as what we call a variable. You can dim a variable/var as a global, shared, or not. You can do this inside the form by clicking the form at top and the last choice is for varables. You can manipulate these with xbasic as you need and then display on your form.

                    You will find methods different, but the results will be the same in the end.

                    You will do fine with Alpha!

                    Dave
                    Dave Mason
                    [email protected]
                    Skype is dave.mason46

                    Comment


                      #11
                      Re: My Introduction Rants And Questions

                      In 1998 one of my clients called and said, "We have to go to Windows, and use email." Up until that time I had been using a DOS language that was not object oriented. When I started looking for a new language they were all object oriented-event driven. I took a few classes with Visual Basic, bought and fought with Access, and a few others. I finally opted for Alpha (version 4.01 at that time.) Although it took me a while to get used to having code all over the place instead of all code for a screen in one single 10,000 line script, I am very pleased I chose Alpha. They are with out a doubt the most responsive company in town - if you find a bug and report it, you may get a response and fix in a few hours!!! And this board is full of people who have been using the language for many years and are quick to help you with beginner or advanced issues. So I heartily encourage you to stay with Alpha - and just go through the hair-pulling tooth-grinding process of learing new ways of doing things.
                      Cole Custom Programming - Terrell, Texas
                      972 524 8714
                      [email protected]

                      ____________________
                      "A young man who is not liberal has no heart, but an old man who is not conservative has no mind." GB Shaw

                      Comment


                        #12
                        Re: My Introduction Rants And Questions

                        Originally posted by Lance Gurd View Post
                        Hi Tom,

                        Answer to question 1 - Right click on the tabs at the top of control panel uncheck layouts, and the old style forms, browses, reports will appear.

                        Undo is annoying, hope you find a way around this.

                        Will leave the rest to others as very busy day!!
                        I do have the Manuals (Spiral bound set) on A5.
                        ----------------------------------------------
                        I had just skimmed the AlphaSports tutorial. Well, on p11-12 in A-Sports is just what you said, but I couldn't find it anywhere else in the manuals such as Creating a Form section.
                        ----------------------------------------------
                        Originally posted by csda1 View Post
                        We're obviously a little biased, but I know many, including myself, who would drop A5 in a second if we didn't think it was the best bang for the buck.

                        Are you using Action Scripting?
                        ----------------------------------------------
                        [This question lead me to a whole new view of A5 as it relates to flexibility in any form.]
                        ----------------------------------------------
                        To create a virtual field on a layout (any type), then create a calculated field on that layout. Drag and drop new calculated field or define in menu drop down choice for calculated fields.

                        To create a field that is calculated and stored in the data structure, edit the field rules for that table, change the field to calculated and then specify the expression.
                        -----------------
                        DOS databases never did or couldn't do, including sharing, multiple tables open simultaneously etc. If you had DOS sharing in exactly the same way, it would not be significantly different in speed in going through the tables. You do get slower in the user interface, and initial load times for the program are slower due to increase sizes, but that's not normally a significant issue.
                        ----------------------------------------------
                        Actually, SmartWareII is a multiuser Relational DOS based, Extended Memory platform that is well tuned to multiple open Tables & to multiple simultaneous users. That's the reason I chose it back in 1991.
                        It also has a language close enough to Q-Basic to be easy to learn & yet has special many operations/functions for Database manipulation.
                        The Compiler is the easiest I know of. You can run any "script" in uncompiled, debug mode then finally compile it for the user.
                        It was designed by Informix (c) and includes an integrated Word Processor, Full Spreadsheet, and Communications (serial ports) language.
                        It was quite advanced in its day and well into the Windows world era when the Win-based database platforms were still in their infancy.
                        I would say that until the last 3yrs, no Win-based database system was even close to it in flexibility.
                        I now use Reflections(c) for the communications as it is I.P. oriented and has it's own Visual Basic style language that is Communications Oriented; MSWord when necessary for Win-based Document output to USB printers. The SmartwareII preps the text or data and MS picks it up from there.
                        Why do I blather on about SmartWareII? I just have to mention the virtues of a faithful, unfailing partner that produced 90% of my income for 15 years without a hitch, even in large multiuser environments.
                        Now, I want to move entirely to a single Win-based platform, and A5 was my studied choice. If it won't do the job, I don't think any other platform would either without a prohibitive learning curve.

                        ----------------------------------------------
                        Originally posted by Tom Cone Jr View Post
                        Tom,

                        unzip the attachment to an empty folder. Open Form1. You'll find an example of illustrating the use of a calculated value. I built it without knowing anything about SmartWareII, based solely on your narrative description. I hope it helps get you going.

                        BTW, one of the REALLY nice things about this message board is that the "Go Advanced" link in the message editor permits you to "Manage Attachments", so you can upload examples for others to see or work on.
                        ----------------------------------------------
                        A great help. Any examples that I receive, I will save into my own computer folder for future reference. This is the first one.

                        My practice is to never make a raw table structure with calculated fields. It does slow things up when the table is simply being used for its field values, such as output to another table or to disk, or a report, etc.
                        I make the calculation in the User interface so that it can be seen & monitored during new record entry. Or, if necessary, I create a special form that auto-calculates right after raw data is imported. Once the value is set, there is no reason to recalculate it at the raw table level.
                        In that regard, I must admit that ACTION SCRIPTING at the Form level is the answer.
                        I took the clue when CSDAL asked: "Are you using Action Scripting?"
                        So, I went back and studied all I could find on the matter both in the manual & separate articles such as "The Hidden Treasure of Action Scripting" by Frances Peake.

                        ----------------------------------------------
                        Originally posted by martinwcole View Post
                        In 1998 one of my clients called and said, "We have to go to Windows, and use email." Up until that time I had been using a DOS language that was not object oriented. When I started looking for a new language they were all object oriented-event driven. I took a few classes with Visual Basic, bought and fought with Access, and a few others. I finally opted for Alpha (version 4.01 at that time.) Although it took me a while to get used to having code all over the place instead of all code for a screen in one single 10,000 line script, I am very pleased I chose Alpha. They are with out a doubt the most responsive company in town - if you find a bug and report it, you may get a response and fix in a few hours!!! And this board is full of people who have been using the language for many years and are quick to help you with beginner or advanced issues. So I heartily encourage you to stay with Alpha - and just go through the hair-pulling tooth-grinding process of learning new ways of doing things.
                        ----------------------------------------------
                        I'll remember your advice. It's good to have someone handy that has migrated from the DOS Database world.
                        ----------------------------------------------
                        Thanks to all for the input, biased or otherwise.
                        Your posts have lead me to a greater assurance that A5 will do the many jobs I want to do.
                        Last edited by SMARTII; 07-23-2007, 12:08 PM.
                        First Love

                        Comment


                          #13
                          Re: My Introduction Rants And Questions

                          Originally posted by SMARTII View Post
                          I took the clue when CSDAL asked: "Are you using Action Scripting?"

                          That point was that action scripting is a wrapper for XBasic code, and does not always produce the most efficient or even desired code. Each Action Script is effectively self-contained, meaning it is designed to identify it's environment in order to know what context to work in. Each action script line often repeats similar code for this contextual info. It also does not always produce good code, however, it is a good way to start. You can always write Action Script, convert to XBasic and then clean it up.

                          Xbasic coding is the way to go IMHO.


                          Originally posted by SMARTII View Post
                          It's good to have someone handy that has migrated from the DOS Database world.
                          Actually, that applies probably to 90% of the people here, including myself.

                          Alpha4 for DOS was relational, shareable, used a DOS extender and had a powerful macro language and scripts, but no true user-definable function calls. All variables were global. It was only 1 table/set at a time.
                          Regards,

                          Ira J. Perlow
                          Computer Systems Design


                          CSDA A5 Products
                          New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
                          CSDA Barcode Functions

                          CSDA Code Utility
                          CSDA Screen Capture


                          Comment


                            #14
                            Re: My Introduction Rants And Questions

                            Originally posted by csda1 View Post

                            That point was that action scripting is a wrapper for XBasic code, and does not always produce the most efficient or even desired code. Each Action Script is effectively self-contained, meaning it is designed to identify it's environment in order to know what context to work in. Each action script line often repeats similar code for this contextual info. It also does not always produce good code, however, it is a good way to start. You can always write Action Script, convert to XBasic and then clean it up.

                            Xbasic coding is the way to go IMHO.


                            Actually, that applies probably to 90% of the people here, including myself.

                            Alpha4 for DOS was relational, shareable, used a DOS extender and had a powerful macro language and scripts, but no true user-definable function calls. All variables were global. It was only 1 table/set at a time.
                            Xbasic code from the git go was my anticipation. I just couldn't find how to do it in a form design on a Real table (not virtual) field. Most of the Calculated form fields will be the result of a Function call and not numerous Action Script expressions re-entered over and over on each field. That would be a nightmare for me.
                            My Table is 140+ fields. The Mainframe import fills about 2/3, the User enters input about 1/4 of them, and the rest are to be auto-calculated based on their input fields & what the import has filled in.
                            A few users have no Mainframe source, so all that is normally imported is then filled in by the user or I have additional calculations for those fields to help them out.
                            Currently I'm converting some of my Dos Database functions that I know I'll need (such as a VIN checker on vehicles) into Xbasic.
                            I have a Function Library in SmartWareII called "allib" that attaches to every application I designed. Then I have a Function Library that only applies to a particular database as they have no meaningful Functions in another Database. For instance, in the DTA (Dealer Titling Application) Database, I have a Function Library called DTA that would load whenever that Database is activated.
                            I'm still not real sure how to create an Inter-database Function Library. Like Step 1, 2 3 .... From there, how to easily add more Functions as I go... on the fly so to speak.
                            Another Function would be called, say, NumStrTrim() where that function does all the trimming on any numeric sent to it and converting it to a String without additional spaces. Stuff like that.
                            Then I just use that function in a form environment on a Table source field. The user has no access to that field, it just fills it in and goes to the next user-input field.
                            Finally, there are Default value entries that fill in if the field is blank, but the user can overwrite if the software "guessed" wrong. For instance it may fill in that the vehicle will just get a transfer-owner-only when in fact it will need to be transfer+plate-replacement.
                            Last edited by SMARTII; 07-23-2007, 12:59 PM.
                            First Love

                            Comment


                              #15
                              Re: My Introduction Rants And Questions

                              Originally posted by SMARTII View Post
                              I'm still not real sure how to create an Inter-database Function Library. Like Step 1, 2 3 .... From there, how to easily add more Functions as I go... on the fly so to speak.
                              http://support.alphasoftware.com/alp..._Functions.htm

                              Take a look at the info linked above, I think this can get you started in the direction you want to go.

                              I have a UDF that will take all scripts and functions and export them in plain text as a backup, compile them into an .AEX, then remove all the scripts and functions from the code tab (i.e. remove them from the database). I copied the script from the help files but added the backup routine. I actually stumbled onto the script the other day but do not remember what search term I had used. If you want a copy let me and I can post it.
                              Andrew

                              Comment

                              Working...
                              X