Skip to content

Michael

Forum Replies Created

Viewing 15 posts - 16 through 30 (of 526 total)
  • Author
    Posts
  • in reply to: Square Roots Mathlib.sma #3507
    Michael
    Keymaster

    Thanks for the report. A new sqrt() implementation is part of the release.

    in reply to: SD and Variance #3500
    Michael
    Keymaster

    Hi John,

    Since the SD can be calculated as the sqrt(Variance), I decided at this stage only to add variance. Other options such as those you described, we contemplate for future changes. I will see about adding a wishlist capability to the online system.

    Ciao, Neil

    in reply to: Detail block filter #3496
    Michael
    Keymaster

    Hi John,

    It should be possible to change the detail block sort order and then call a method to repopulate the detail block. I will have a look at what that involves.

    As for the searching concept, it is completely possible to create a form with an unlinked detail block and then populate that using a filter. This could then be shown in a dialog for example.

    Ciao, Neil

    in reply to: Form Designer Various #3495
    Michael
    Keymaster

    Hi John,

    1. We don’t currently even have a grid. We can try and look at these quality of life issues for the Form Designer in the near future.

    2. I honestly can’t say about zoom mode. I too would like one, but at the same time, I am unsure if I will be able to get the controls to expand to the correct size. I have been asked about this one before. I will have another look.

    3. As for scalable forms, that should be possible. It could be lumped in with the work when we add grids, snap-to-grid, etc.

    4. I will have a look at the move to front and move to back for graphics. They used to work, but perhaps something has happened in the interim.

    5. As for tessellation, I haven’t got any code myself for that. It could be quite interesting though, since that would be the approach to creating business graphics on forms, including pie charts, bar charts, stacked bar charts, etc. in 2-D and 3-D.

    Ciao, Neil

    in reply to: SD and Variance #3494
    Michael
    Keymaster

    Hi John,

    I have added the Variance to the list of aggregates supported by the Quick Report and Graphic Report engines. It will be available in the next release.

    Ciao, Neil

    in reply to: Iterating through form to get detailblocks #3487
    Michael
    Keymaster

    Hi John,

    You should be able to use something like this:

    dataform1detailblock dtb
    
    dtb =@ me.form.detailblocks.getfirst()
    while dtb !@= .nul
      // ...
      dtb =@ dtb.formnode.getnext()
    end while dtb =@= me.form.detailblocks.getfirst()
    • This reply was modified 7 years, 1 month ago by Michael.
    • This reply was modified 7 years, 1 month ago by Michael.
    in reply to: Drop Down control not showing #3485
    Michael
    Keymaster

    Hi John,

    What is the source for the combo boxes that are causing the problem? Is the content coming from another table, from a static list, or what?

    Ciao, Neil

    Michael
    Keymaster

    The IP Address is there as a default value. If you place a value in the ini file then that overrides the default value. If you don’t want to have a default value, then you can use “”. As for the T|F, those are string equivalents for the boolean .true and .false. If you look at the defboolean display format it contains “T|F”. If you want to use .true and .false, go right ahead, just change the if statement to look like this:

    if s == ".true"
    ...
    end if

    As for the point of the ini file, it is so that you don’t have to change the source and recompile for things that are effectively data and which could change. Things like the PPCS server location.

    Ciao, Neil

    • This reply was modified 7 years, 2 months ago by Michael.
    Michael
    Keymaster

    Hi John,

    Q1. Where to store data? Right now, it seems like we are encouraged to store data in C:\Users\Public\Documents\SIMPOL MyApplication\

    That is the correct location if you are creating an application to run on a PC that has multiple users, or one you are designing for distribution for individual users. If you are creating a network application then put the data someplace on the network (people do not need to be able to map the drive). The important issue is going to be, “Where do you run the server program?”. That program needs to run on a machine that is always on. The IP address of that machine should also not be allocated using DHCP, so that it won’t ever change.

    Q1a. Code changes Are there places where we need to change code and how? It looks like in the sb_tables type, something need to be done. But it is unclear to me how exactly.

    string datapath ;// This is the location of the database files when running single-user
    string serveraddressport ;// This is the location of the ppcsserver with port in the format 127.0.0.1:4000
    boolean useppcs

    Should we use a constant for datapath and serveraddressport?

    I tend to define these in an ini file and read that in the sbapplication.new(). As for changes to the sb_tables type, have a look at a very recent SIMPOL Business and you will see that it has been designed for both single-user and network.

    If you have been using type declarations like: sbme1table or sbme1record, you need to change to using the syntax:

    type(db1table) table
    type (db1record) r

    Q2. Where to store the forms?

    When preparing an application for deployment, you should determine your deployment strategy. You can just put the whole application, plus the required binaries, into a directory on a network location. Then everyone could run it from there. If you want it to be local (much more hassle if you are making changes), then just copy the directory down from the server to the local machine where you created the run time version. You should only distribute the *.smp, any forms, reports, quick reports, etc. plus any images files you may need, and the required binaries. For more information about which binaries (which you get from the SIMPOL\redist directory), see the Deploying SIMPOL Programs chapter in the Quick Start Guide.

    How does getcurrentdirectory work on each workstation?

    This returns the directory where the code is running from.

    Q3. How do I use simpolserver and write a correct ‘sample.cfg’ The readme.txt does a pretty good job but I’d really like to automat this and have it all run as part of the application. So a couple of follow ups. Are there any gotchas about what directories to use.

    Q3a. If there is no server per se on the network, I think the consensus the last time I asked was you could run simpolserver on any machine without much difference and so long as it was running everything would would on the other machines. Has anything changed?

    You can’t really automate this and make it part of the application. It is a database server and is separate from the application. You will only have one instance of this running in the network. You can run it on a desktop, but then that desktop will need to be on and the server will need to be running otherwise nobody will be able to work. Everyone will need to map the IP address and port number of the server machine.

    Q3b. I am really worried about data getting corrupted via using simpolserver. There was a warning some place and so I’m a little paranoid. A corrupted datasource and/or table could really be devastating. One table has nearly 70000 records another nearly 40000. This would be a massive problem. What a safe data-handling steps, do I need to take? Daily backups? Hourly?

    You needn’t worry overly much about the data-integrity. We have companies using the server (including our own company), and it is very reliable. What is important is to shutdown the PPCS server properly, but even then you shouldn’t get corruption. You can take daily backups if you have a lot of change, weekly if less so. I would do monthly backups and then weekly ones and at every monthly you can drop the weekly backups.

    Could I set it up this way, so that who’s ever first in office runs the server, if it is not already running?

    Not really. Only one machine should be hosting the data and it will be identified by its IP address. I can’t currently imagine an easy way for a user machine to run the server on the correct machine. The server can be set up to run as a service on most Windows systems. That means the machine only needs to be on, not necessarily logged in, in order to provide the PPCS service.

    Q3d. Where are all the places for example in the Simpol Business example code that need to be changed to run as multi-user PPCS and what do the changes look like?

    I suggest you look at the most recent version of SIMPOL Business. It was modified to run as either single-user or multi-user and also demonstrates how to incorporate labels and the newer version of graphic reports.

    Ciao, Neil

    in reply to: Minimum files to run smp app #3474
    Michael
    Keymaster

    No, we are using Inno Setup 5 and Inno Script Studio 5. We switched to Inno setup when we release version 2.0 of Superbase NG.

    Ciao, Neil

    in reply to: Minimum files to run smp app #3472
    Michael
    Keymaster

    Hi John,

    The converter might work with pngs, but pngs have a few issues in SIMPOL when saved as blobs (having to do with transparency and the alpha channel). If you save them as BMP you can convert them with the tool we supply in the utilities directory: saveimagetoblobgui.smp.

    Ciao, Neil

    in reply to: save to sfx #3471
    Michael
    Keymaster

    We are currently testing wxWidgets 3.0 on Linux. Once we are satisfied it is working correctly, we will try and get it into our Windows release. At that point we can take a look at the wxCalendarCtrl.

    in reply to: Minimum files to run smp app #3468
    Michael
    Keymaster

    This stuff is documented in the Quick Start Guide, here is a link to the current online version: http://www.simpol.com/docs/quickstart/intro_deployingprogs.html. As for a free installer, we switched with the 2.0 release to the INNO installer. Should be pretty easy to get one running for a SIMPOL runtime program. Just be aware that if they install to Program Files that you can’t store and user-modifiable data there (Program Files and below is read-only to users as of Vista). If you need to store data, then follow up in here.

    in reply to: save to sfx #3466
    Michael
    Keymaster

    Hi John,

    You can’t save a wxform to a *.sxf directly, since it isn’t a dataform1 (which is what we store in *.sxf files). However, I had the same problem and came up with the following solution, assuming your form variable is f:

    dataform1 df
    integer e
    
    e = 0
    df =@ convertwxformtodataform1(f)
    savedataform1(df, "myform.sxf", error=e)

    As for the date and time interfaces, or the calendar control, you are welcome to give it a go. The calendar control was contributed by a customer in Europe and I only made a few recent changes to it to allow for North American calendar format (week starts on Monday instead of Sunday like in Europe).

    The big problem that I find with any of these, is that I would normally want to get a bunch of information from the user, not just a single date or time, so I end up creating a custom dialog for everything anyways.

    Ciao, Neil

    • This reply was modified 7 years, 3 months ago by Michael.
    in reply to: Sending Email from within Simpol #3463
    Michael
    Keymaster

    To make sure you can even send email with it, try using it from the command line. Just open a cmd.exe window and move to that directory. Then run sbngmail.exe with no parameters to see the parameter list. Then try a very basic email using the minimum parameters necessary to send it. Please note that there should be no spaces on either side of the equals (=) signs for the parameter list.

Viewing 15 posts - 16 through 30 (of 526 total)