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

How to create Export File....

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

    How to create Export File....

    Hi Guys,

    I need to create an export file containing data from one of my databases. Problem is, that the format of the export file is fixed: I am not allowed to change it and need to use the pre-described format.
    Of course, I can create a special table dedicated to this file format and then fill it with an operation from the original table, and then export.
    Problem is how to create the file.

    For instance, they want a "header" to the file that exists of 12 fields (each different). Then after the header, the actual data records have to appear in a fixed format.

    Now, the export operation does not present the opportunity to implement a header into the file.
    How would I go on achieving this ?

    Kind regards,

    Marcel

    #2
    RE: How to create Export File....

    "FILE".WRITE_LINE() can be used to construct the desired export file, one line at a time.

    -- t

    Comment


      #3
      RE: How to create Export File....

      Just to expand a little on Tom's answer ...

      The steps are:

      check to see if your export file already exists (File.exists())

      Remove it if it does (file.remove())

      Create a new version of the export file (File.create())
      Using your table information, parse the file, line by line. Alpha has all the functions needed to do it. Typically you will use substr(), PADL and PADR and LEN() among many to meet the requirements then was each line is finished, write it into the file with file.write_line() or file.write().

      Whe you are done you flush the file buffer (file.flush()) then close it (file.close()).

      The help examples are clear. Writing to external files this way is so easy and fast that I haven't used any type of export operation in years.

      Finian
      Finian

      Comment


        #4
        RE: How to create Export File....

        Thanks, Finian.

        Stan Mathews' penchant for succinctness is beginning to have an effect on my natural verbosity.

        -- t

        Comment


          #5
          RE: How to create Export File....

          But not your veracity.
          There can be only one.

          Comment


            #6
            RE: How to create Export File....

            Thank you all for reacting to my question.
            Thanks also Finian for the procedure on it, that is very helpfull to keep track of things.

            So, this would be a two-step xbasic operation, where the first step would be to create the header, and the second step to write the lines from the tables.....

            Am I correct ?

            Regards,

            Marcel

            Comment


              #7
              RE: How to create Export File....

              No.

              Your script would open the text file and then write each line to it until you were finished. Your script would have to build each line as a string that you write to the file. One line at a time.

              I envision a sequence with a fixed number of "header lines" each of which would build a different string, but then uses a loop to write and re-write the "same" line as you fetch through the table. Naturally, this latter string would include variables or fields so that while the same code executes each time through the loop and the string is built anew, the actual text contained in the string will be vary from line to line as you step through the table.

              This is more difficult to describe than to do.

              Why not take a few minutes and create a text file from the Customers table in AlphaSports, without using the built in report engine?

              -- t

              Comment


                #8
                RE: How to create Export File....

                Hi Tom,

                Sure, you are right about taking the time. I am willing to do that. That is why I am taking time on forehand to see how it could be done.

                You say it is more difficult to describe then to do so.
                May I add that I hope it is not so difficult to do as to read and understand it :-) ?

                Tom, I hope I understood you right, so don't shoot me if I did not quite.... but the header line they want me to create, should be 1 header line, not a fixed number of header lines, and it should contain 12 fields.
                The positions of the header line should be from position 1 to position 275. So I assume it would be like this:

                |---field 1---|---field 2---|---field 3---| and so on.
                Then CR/LF and the record-lines begin.

                However I do not have much experience in xbasic, I kind of start to understand the way it should be done with "FILE".WRITE_LINE() and I must say it seems not to difficult. It is more the creation of the header that bothers me.

                You are right again I think that it probably should be done by variables, OR using another table in a set.
                I could feed table A with header info and table B with record info and then create a table C through an operation that is the basis for creation of the export file.
                Then, get the data from table A and have it put in the header line of the file, open records from table B and further build up the export file from line to line, record to record.

                Regards,

                Marcel

                Comment


                  #9
                  RE: How to create Export File....

                  The key to this will be to thoroughly understand the format requirements of the export file. Character by character, linefeed by carriage return. Line by line.

                  If time permits I'll put together a simple example for you.

                  -- t

                  Comment


                    #10
                    RE: How to create Export File....

                    Marcel,

                    Here's an example for you.

                    Use the text in the attached script to create a new script on the code page of your AlphaSports sample.

                    Let me know if you have questions after you play with this for a while.

                    -- t

                    Comment


                      #11
                      RE: How to create Export File....

                      Maybe this will help. The attached script demonstrates some of the principles discussed. Copy the script to the code tab of the AlphaSports sample. Run the script. Examine the file created - c:\test.txt

                      It will build the header line by prompting for the desired header strings for each of the four fields (customer_id, concatenated first and last name, state code, and zip code) to be written to the file.

                      If the header string is longer than the field width, the field is padded right with spaces to match. If the field width is longer than the header string, the header string is padded right to match. This way the "columns" line up.

                      You could hard code the header or pass the values from fields on a form with a little extra work.
                      There can be only one.

                      Comment


                        #12
                        RE: How to create Export File....

                        Guys,

                        Thank you both for giving me this examples to study on !

                        Kind regards,

                        Marcel

                        Comment

                        Working...
                        X