Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 23

Thread: Interface Questions

  1. #11
    Lianja Support Team lianjasupport's Avatar
    Join Date
    Feb 2012
    Location
    Boston USA, Wokingham UK
    Posts
    1,259
    Yes you can do all that now with custom or canvas sections but to provide drag and drop form and or grid sections that won't work. So it's a trade off between ease of development and what you mention. We will think more about this. Cursoradpators can handle data access but they have no known methods for querying columns etc that is data source independent.

  2. #12
    Lianja MVP
    Join Date
    Feb 2012
    Location
    Berea, KY, USA
    Posts
    2,185
    Quote Originally Posted by lianjasupport View Post
    Yes you can do all that now with custom or canvas sections but to provide drag and drop form and or grid sections that won't work. So it's a trade off between ease of development and what you mention. We will think more about this. Cursoradpators can handle data access but they have no known methods for querying columns etc that is data source independent.
    re: datasource independent -- I plead confusion. The cursoradapter can connect to any ODBC datasource. Obviously I'm missing something. If you could enlighten my ignorance, I would be very appreciative, again.

    re: won't work on form or grid sections: similar confusion and request. I would see the cursoradapter as the datasource, and the cursoradapter alias as the table.

    tia,

    Hank

  3. #13
    Lianja Support Team lianjasupport's Avatar
    Join Date
    Feb 2012
    Location
    Boston USA, Wokingham UK
    Posts
    1,259
    Let me explain the problem then.

    In the "Page Builder" the "Databases", "Tables" and "Columns" on the left hand side.

    Double click a database displays the tables.

    Click a table displays the columns.

    Ok right...

    Drag a "Table" onto a page and voila a form section (or grid if Ctrl+drag).

    So..

    Having an empty form section and specifying a cursoradapter... Where are the fields and what fields should be displayed and where? Furthermore, the way that Lianja lets you work with live data (a snapshot of your data) allows you to visually see exactly how the App will look against the "real live data" when we enable the ODBC connection string in runtime mode.

    Yes, the cursoradaptor when opened connects via odbc and executes some select statement BUT that way is the opposite way that Lianja allows you to drag from an existing database table and none of this fits into the Database/Table/Columns UI panels. What happens if you build a Form section against a certain CursorAdaptor then change it? So these things have to be taken into consideration.

    IOW CursorAdaptors represent "Virtual tables" which is what SQL SELECT statements give us -- and CursorAdaptors do not belong to a database container.

    On top of this every ODBC datasource has a different way of querying its tables and its constraints. There is no real standard for this. MSSQL for example requires tables to be qualified with a schema name and we have to take care of that. Other databases e.g. oracle operate differently again.

    So in a nutshell, just providing a "CursorAdaptor" attribute is all fine and dandy but you would lose a lot of the functionality.

    OTOH you can do what you want with a Custom and Canvas sections.

    I'm not saying its not possible, I'm just saying at this moment in time its is not and we are still looking into the best way to provide this functionality so it is seamless and does not break product nor the methodology behind building Apps.

  4. #14
    I am having trouble with the interface, and developing 'pages'.

    Firstly, this below, was posted in a reply by the development team:
    "The overall concept behind Lianja is to treat "Sections" as a visual representation of "Database Tables". The sections being related together visually so it merges the concepts of relational database and visual elements which may or not be SQL data i.e. they can contain web content or other."

    I am trying, as my first effort, to make a simple log in screen. I have 4 memvars, and one table with users, and some fields with stuff they must get right before being able to log in, such as date of birth, last 4 social security numbers, and a password. I started off adding a 'form' to the 'page', and then textboxes to that form, but the system tells me I first need to add a canvas. Adding a canvas creates another 'section', which, if bearing in mind what the development team above wrote, is not what I want. All I want is a blank page, 4 entry fields, a button for 'loging in', and a lable, of which I can programatically change the caption with either a successful, or unsuccessful login message. In VFP it is the simplest thing to do, but here it goes completely against what the development team states above. Can we actually program in Lianja, or is it just a drag and drop tool for desktop users wanting to visually see what data they have?

    Thanks.

  5. #15
    Hi JMCA1,

    In Lianja that are many ways to skin the cat, from Drag and Drop to doing almost everything via code.
    It's so flexible, that it can sometimes be daunting or confusing.


    For what you are trying to accomplish, try the following.
    Add a page and call it page1
    Add a canvas section to the page and call it section1.
    Note* - To add items to a canvas, you use the advanced menu on the bottom of the app builder.
    Add a label to the page. Make sure it is highlighted, then double click it to get the field attributes and name it label1. Change it's caption to "test". Move it to where you like.
    Add a textbox the same way. Change its name to textbox1. You can keep or hide the caption.
    Add a commandbutton the same way. Make sure you click the edge of the commandbutton until it is highlighted, then double click it to see the field attributes.

    scroll down the custom delegates until you see the click event. Click on the two dots on the right. An editor will open for you to add your code.

    It will look like this.

    // Event delegate for 'click' event
    proc page1_section1_field3_click()
    // insert your code here
    endproc

    change it to look like this


    // Event delegate for 'click' event
    proc page1_section1_field3_click()
    //get references to your object
    myTextbox = Lianja.get("page1.section1.textbox1")
    myLabel = Lianja.get("page1.section1.label1")

    //Assign the value from the textbox to the label
    myLabel.caption = myTextbox.text
    endproc
    Then when you save and run the application, it will replace the label with the value from the textbox.

    Attachment 754

    Hope that helps.

    Herb

    ps - it worth taking the time to understand how the different sections work.

  6. #16
    Senior Member
    Join Date
    Jul 2013
    Location
    Ontario, Canada
    Posts
    658
    Hi Herb,

    Your attachment seems to be invalid.
    You may want to try again.

    Cory

  7. #17
    Lianja Development Team barrymavin's Avatar
    Join Date
    Feb 2012
    Location
    UK, USA, Thailand
    Posts
    7,164
    Blog Entries
    22
    I can see it when I click in the link.
    Principal developer of Lianja, Recital and other products

    Follow me on:

    Twitter: http://twitter.com/lianjaInc
    Facebook: http://www.facebook.com/LianjaInc
    LinkedIn: http://www.linkedin.com/in/barrymavin

  8. #18
    Senior Member
    Join Date
    Jul 2013
    Location
    Ontario, Canada
    Posts
    658
    That's interesting.

    When I click the link, I get:
    Invalid Attachment specified. If you followed a valid link, please notify the administrator.

  9. #19
    Senior Member
    Join Date
    Feb 2012
    Location
    Rome - Italy
    Posts
    1,893
    Me too..

    ciao
    Fabio


    Quote Originally Posted by CGibson View Post
    That's interesting.

    When I click the link, I get:

  10. #20
    Oops - I will re-attach it tonight.

    It was just a screenshot of the form.

    I will re-attach it tonight.

    The overall point being that it is very simple to add controls and reference them via code. Which I think was the question.

    Herb

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Journey into the Cloud
Join us