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

Need Help Making A Record Unique

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

    Need Help Making A Record Unique

    I have three fields in a file: "Part Number", "Revision", and "Lot Size". The first two are character and the third ("Lot Size") is a numeric. What is the best way to insure that upon entry of a new record or changing an existing record that the combination of all three fields are unique (in other words if the same combination already exists in another record do not allow the enrty)? I would like to see a message when leaving any one of the three fields that tells of the duplication.

    I tried custom validation on "Part Number + Revision + str(Lot Size)" This works for the first two fields but does not work for the "Lot Size" field. The error message is "Validation Expression Does not Evaluate to a Numeric Value". I guess that this is because the field is numeric and Alpha wants the expression to evaluate to the same data type. I thought of using a character field but this is a pain because I have to use "Val(Lot Size)" every time I want the value. Is there an easy way to do this? I would appreciate it if somebody could shed some light on this problem.

    Thanks,

    Randy Hyland

    #2
    RE: Need Help Making A Record Unique

    That's because you're tryiing to mix apples and oranges. You will need to convert the numeric field to a character field. BTW, why is the Lot Size field numeric? Fields should only be numeric IF they are doing math calculations. Lot Size doesn't seem to me that it's a mathematical equation.

    kenn
    TYVM :) kenn

    Knowing what you can achieve will not become reality until you imagine and explore.

    Comment


      #3
      RE: Need Help Making A Record Unique

      Ken,

      Thanks for the reply. I will be doing calculations on lot size when I release work orders against the quote.

      I was also having some trouble with the custom validation because the part number, revision, and lot size are in a parent table which is linked to a table called operations which stores all the steps necessary to manufacture the item. The problem is that each time I add a child record to the operations table, It tells me that the record is not unique. I am assuming that this is because it is trying to save a composite record in which that same part number, revision and lot size already exists for a previous operation. If you think of the parent file as a header and the child as a line file, I only want the system to prevent dups for the entry in the parent table not also every time I add a new child record.

      To futher explain, It is as if I have an order header file and an order line file. I want to not be able to dup the order number in the order header file but the order number can be repeated many times in the order line file, with different line numbers (or in my case operation numbers). What seems to be complicating things is that I am trying to key off of the combination of three fields (part number+revision+lot size) instead of only one field. I do not think Alpha likes that approach, I am not sure, or I just don't know the right way to handle it.

      Comment


        #4
        RE: Need Help Making A Record Unique

        I just don't know the right way to handle it.

        Could be. Have you examined the AlphaSports database that ships with A5? I susect it is set up real close if not exactly for what you want. There are numerous invoices for each account number plus numerous line items for each invoice number. All unique fields are one field, not a combination.

        You also might get other ideas on things to try.

        kenn
        TYVM :) kenn

        Knowing what you can achieve will not become reality until you imagine and explore.

        Comment


          #5
          RE: Need Help Making A Record Unique

          create an index on the expression:

          "Part Number + Revision + str(Lot Size)"

          then, in the table's "CanSaveRecord" event, put

          if exists("Part Number + Revision + str(Lot Size)" ,yourtablename, yourindexname) = .t. then
          ui_msg_box("Error","Data not unique")
          cancel()
          end if

          Comment


            #6
            RE: Need Help Making A Record Unique

            at the risk of being presumptuous, i believe selwyn has made a small mistake. you should put the cancel()before the ui_msg_box() informing the user of the error, otherwise in some cases A5 gets confused about which window (your form or the msg box) should receive the effect of the cancel(). so the script should be

            if exists("Part Number + Revision + str(Lot Size)" ,yourtablename, yourindexname) = .t. then
            cancel()
            ui_msg_box("Error","Data not unique")
            end if

            Comment


              #7
              RE: Need Help Making A Record Unique

              Peter,
              Thanks for that little tidbit. Answers a few old unexplainable situations.
              John

              Comment


                #8
                RE: Need Help Making A Record Unique

                If you will ever need to do a look up based on your 3 criteria, you also might find it helpful the define the index as:

                UT(Part Number)+" "+UT(Revision)+" "+UT(str(Lot Size))

                The reason for this is that if you do a lookup on:
                Part Number + Revision + str(Lot Size) Alpha won't be able to tell where one field ends and the next begins. With the upper-trim you are trimming blank spaces from the fields and adding 1 space between them so if you do a lookup you can type in something like:
                12345 45 12 for your three parameters and Alpha will find the correct record.


                Russ

                Comment

                Working...
                X