
Now, when running the application should be similar to the following image where we will be asked to enter User, Amount and select the number of months. That will avoid requesting the variables when running the application.

In order to ensure that the sum of the quotas and the total to be paid are equal we apply to the last quota the difference between the Total to be paid and the sum of quotas previously inserted.Īfter finishing writing the code, if we execute it will appear the white screen requesting the assignment of values to variables used in the application.īecause our variables are for internal use and we do not expect to receive them, we must change the Variable Type to “Out”. It should be mentioned that this macro allows us to execute any SQL Statement on the Database Server, so it is very useful for executing stored procedures or even maintenance tasks.įor the last installment (month) we will give special treatment because the rounding of the division sometimes may not be exact, which would cause in the end that the Total to be paid and the sum of quotas are not equal. Database connection to use (in the example Payment is in the MySQL table, so the connection should be conn_Sales).SQL statement (in the example the statement is stored in the $insert_sql variable).The parameters received by the SC_EXEC_SQL macro used for the insertion are: All this we do inside an if loop that will allow us to control that it is not the last month.

CALL MYSQL STORED PROCEDURE FROM SCRIPTCASE UPDATE
Taking that code as a base, we update the table name and column data according to our structure. In the following image you can see that we also have an example code for insertion. With a for loop we must go through the insertion process as many times as the user has selected months. To do this we first calculate and assign to the session variable the amount to be paid each month. The last step is to code the event onValidateSuccess so that it inserts the payments that the user will have to make taking into account the months and the amount with interest to pay during that period. In the field so that it updates the data every time the number of months changes. The next step is to mark as required the fields: User, Amount and Months And as read-only the fields: Interest and Total (option located in Control -> Edit Fields). Īccording to the above the application will have 5 (five) fields, for this we click Control -> Fields -> “New Field”, enter the number of fields to create and click “Next”.įinally, we click on “Create” in order to save the configurations of each created field. Once we have these data the application will query the table Parameter and return the percentage of interest to apply for the amount of quotas selected and the total to be paid. The next step is to create the necessary fields for the user to enter their name, desired amount and number of installments. We create a Control application in order to add the fields we want to show the user and from which we will then carry out the process that will calculate how much the user will have to pay and how much he will pay each month including interest. Once inside our project in the Scriptcase, we create the connections that we will need to consult the table in PostgreSQL (conn_Parameter) and then insert into the MySQL table (conn Sales). Within the table “Parameter” we have the percentage of interest that the user will pay based on the number of months that he chooses in our application. The process that we will do will calculate the percentage of interest that the user will have to pay based on the amount desired and the number of installments (months) that he needs to pay back. The table “Parameter” in a PostgreSQL database. In terms of Database structure, we have two tables which are shown below: We will use the following Scriptcase Macros to make our work easier:

On the other hand the user will enter some parameters and then complete the calculation and insert the result into the Database. The data processing that we will show as an example here is the one done at the Application level, to execute this example we will take certain parameters from the Database. Depending on how big the volume of data to handle are and the interaction that the user must have, one or the other may stand as the best option in some cases. Data Processing in Control Forms: Using Macros to query and insert into Databaseĭata processing can be done at the Database level (with Stored Procedures, Triggers, Functions and so on) or Application level.
