Logic Pro Studio 8

In this Logic Pro 8 audio software tutorial you will explore the Piano Roll Editor (AKA Matrix Editor) and see how it compares to Logic Pro 8's Score Editor. Piano Roll Editor is one of the main MIDI editing windows in Logic Pro 8 so it's a good idea to learn how to use it. Jul 06, 2021 To learn more about XPath, see XPath Contains in the Studio Pro Guide. Secondly, you will iterate over the retrieved list of objects and calculate the total price of all the orders in a Loop. You will end this how-to with an alternative to calculating aggregated values over a list of objects. Earn 8% in rewards w/free Backstage Pass membership on all pro audio equipment from signal processors to lighting & stage effects to headphones and software. Logic pro 8 exe free downloads. Multimedia tools downloads - Logic Pro by Babya and many more programs are available for instant and free download.

1 Introduction

In this how-to, you will learn how to work with a list of objects in a microflow. To manage this list you will first retrieve a filtered list of objects from the database. Mendix utilizes XPath constraints to apply filters. To learn more about XPath, see XPath Contains in the Studio Pro Guide. Secondly, you will iterate over the retrieved list of objects and calculate the total price of all the orders in a Loop. You will end this how-to with an alternative to calculating aggregated values over a list of objects.

Studio

2 Preparing the Data Structure, GUI and Example Data

To see the results of this how-to it is necessary that you setup a test app with test data.

Before you continue, make sure that you know how to create the following:

  • Domain models – if you need more information, see How to Create a Basic Data Layer
  • Overview and detail pages – if you need more information, see How toCreate Your First Two Overview & Detail Pages
  • Menu items – if you need more information, see How to Set Up the Navigation Structure
  1. Create the following domain model:

  2. Create overview and detail pages to manage objects of type Customer and Order.

  3. Create menu items to access the Order and the Customer overview pages.

  4. Add the following customer data to your app:

  5. Add the following order data to your app:

3 Retrieving a Filtered List of Objects from the Database

In the previous section you have set up a basic data structure and created some sample data. In this section you will retrieve all the ‘Processing’ orders. To achieve this you will add a microflow button to the ‘Orders’ overview. In this microflow you will add a ‘Retrieve from database’ ‘Action activity’ with an XPath constraint. The XPath constraint will filter the retrieved list to only the ‘Invoiced’ orders.

  1. Create a new microflow by right-clicking the module and selecting Add > Microflow.
  2. Name the Microflow _IVKSetOrderToComplete.

  3. Save the new menu item by clicking OK. You should see an empty Microflow like this:

  4. Add an Action button to the toolbar of the orders overview:

  5. Double-click the action button and in its properties, enter Set Processing to Complete for the Caption.

  6. For On click, select Call a microflow, and then select the IVK_SetOrderToComplete microflow.

  7. Open the IVK_SetOrderToComplete microflow by right-clicking the new button and selecting Go to microflow.

  8. Open the Toolbox. It should be on the bottom right of .

  9. Drag a Retrieve action from the toolbox to the line between the green start and red end event. This inserts a retrieve action activity.

  10. Double-click the retrieve activity to open its properties.

  11. Select From database for the Source option.

  12. Set the following properties:
    a. For Entity, select Order_
    b. For List, enter OrderList

    With the currents settings your retrieve action gets every order in the database, using the XPath expression in the following steps you will filter the results that come back from the database.

  13. Add the following XPath expression in the XPath constraint field: [OrderStatus = 'Processing']. This expression will filter the list to only orders with the status Processing.

  14. Your properties screen should look like this:

    With the currents settings your retrieve action gets all the ‘Processing’ orders in the database. In the next section you will edit this list of orders.

You should see a microflow like this:

Logic Pro Studio 8 free. download full Version

4 Iterate Over a List of Objects

In the previous section you retrieved a list of orders with the status ‘Processing’. In this section you will iterate over this list and change the status of each object individually to ‘Complete’. To do so you will use a ‘Loop’ to iterate over the ‘OrderProcessingList’ and use the change object activity to change the status of the order object.

  1. Open the IVK_SetOrderToComplete microflow created in the previous section.

  2. Drag a Loop action from the Toolbox to the line behind the OrderProcessingList action activity.

    A loop is used to iterate over a list of objects. For each object the flow inside the loop is executed. For each object the flow inside the loop is executed. The flow starts at the element that has no incoming sequence flows. A loop can contain all elements used in microflows, with the exception of start and stop events. Additionally, a loop (and only a loop) can contain break events and continue events. The iterator, which looks the same as a parameter, represents the current object in the list for each iteration. Beneath it the name of the object is shown in black and the entity type of the object in blue. For more information, see Loop.

  3. Double click the loop activity and select the OrderList to iterate over.

  4. Drag a Change object activity inside the loop:

  5. Double click the change activity to open its properties.

  6. Select the IteratorOrder at the Object drop-down menu and click the New button. This will open the Edit Change Item editor.

  7. Set the following properties:
    a. For Member select OrderStatus.
    b. For Value enter MyFirstModule.OrderStatus.Complete.

  8. Click OK. Your properties screen should look like this:

  9. Set Commit and Refresh in Client to Yes to commit your changes to the database and refresh your list in the client so your changes will be visible, then click OK. Your microflow should look like this:

    Or, to optimize the number of commits, you can perform the commit outside of the loop. This way, there will be a single commit to the database instead of one per order:

  10. Re-deploy your application.

  11. Click the Set Processing to Complete button. The orders with status ‘Processing’ will now be changed to ‘Complete’.

5 Calculating a Total List Value Using a Variable and a Loop

In the previous section you iterated over a filtered list of objects using a ‘Loop’. In this section you will use a loop to calculate the total sum of all your orders. To calculate this sum you will create a variable, which will be changed for every iteration in the loop.

  1. Add a new microflow button to your order data grid with the following details:
    a. Caption of the button: Calculate Total Order Priceb. Name of the microflow: IVK_CalculateTotalPriceOrders
  2. In the new microflow, add a Retrieve activity for Orders and a loop for this list to the microflow.

  3. Drag a Create variable before Retrieve0 OrdersList.

  4. Double click the Create … variable to open its properties and configure it as follows:
    a. For Data type select Decimal.
    b. In the value editor, enter 0.
    c. For Variable enter CalculatedTotalPrice.

  5. Add a Change variable activity inside the loop.

  6. Double click the Change variable activity to open its Properties and set the following properties:
    a. For Variable select CalculatedTotalPrice.
    b. For Value enter $CalculatedTotalPrice + $IteratorOrder/TotalPrice.

    By iterating over the list, the price of every order will be added one by one to the ‘CalculatedTotalPrice’ variable

  7. Drag a Show Message action from the toolbox to the end of the microflow.

  8. Double-click the message activity to open its properties and set the following properties:
    a. For Template enter Total calculated price: {1}.
    b. For Parameters add toString($CalculatedTotalPrice).

  9. Click OK. You should see a Microflow like this:

  10. Re-deploy your application.

  11. Click the Calculate total order price button and you will see the price of all the orders added up.

6 Calculate a Total List Value Using an Aggregate Function

Logic Pro Studio For Windows

In the previous section you iterated over a list to add the value of single object to a total price variable. In this section you will use the ‘aggregate list’ function to calculate the total price instead of using a loop. The aggregate list can be used to calculate aggregated values such as the maximum, minimum, sum, average and total amount of objects over a list of objects.

Pro
  1. Open the IVK_CalculateTotalPriceOrders microflow and remove the loop and the CalculatedTotalPrice variable.
  2. Add an Aggregate list activity after the OrderList.

  3. Double click the aggregate list activity to open its properties and set the following properties:
    a. For List select OrderList.
    b. For Function select Sum (see the documentation for the description of the other functions).
    c. For Attribute select TotalPrice.
    d. For Variable enter a descriptive name like SumTotalPrice.

  4. Click OK.

  5. Double click the message activity and replace the $CalculatedTotalPrice variable in the Parameters expression with the $SumTotalPrice variable.

  6. Click OK. Your microflow should look like this:

  7. Re-deploy your application.

  8. Click the Calculate total order price button and you will see the same price of all the orders added up.

7 Filter List of Orders on the City of the Associated Customers

In the previous sections you filtered the list of orders from database on attributes of the order entity itself. In this section you will constrain on attributes over the associated customer object. In the example of this section you will set the order status of all customers in Rotterdam to the status ‘Complete’.

  1. Open the microflow IVK_SetOrderToComplete.
  2. Open the OrderList retrieve activity.
  3. Add an XPath constraint over the association to customer, constraining on the city (Rotterdam) of this customer.

  4. Click OK and re-deploy your application.

  5. Open the application in the browser.

  6. Click the Set Processing to Complete button. All the orders from customers in Rotterdam are set to Complete.

8 Read More