Graphics

 View Only
  • 1.  Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 04:53

    I want to make a slide show with x-number of slides. These pages are generated via datalinq, but the number is variable (when live it can change). Sometimes there are 3, sometimes thirty. If you put a number of scenes together in the sequence, the total number is not known at that moment. AND also during the live being the number can decrease/increase.

    With a crawl you can perfectly overcome this with <n+1>, but how do you format this if you don't make a crawl?



    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------


  • 2.  RE: Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 05:39

    I found out that you can place a script within 1 scene (on a timeline) where you can have a relID check if there are multiple results that can be displayed. You can then call it up by restarting the timeline and increasing the relid by 1 and refreshing the values of the datalinq, but with the code below nothing happens to me. And I think it's true. Am I missing something?

    //Row is the actual number, checkrow is row incremented with one, to check is this value excist.

    dim keys as xpDatalinqKeys
    dim key, checkey as xpDatalinqKey
    dim checknext as xpTextObject
    dim Controle as xpTextObject
    dim curTakeItem, nextTakeItem as xpTakeItem
    dim seqGrp as xpTakeItemGroup
    Dim outFB as xpoutputframebuffer
    Dim text2 as xpTextObject
    Engine.getoutputframebuffer(0, outFB)
    outFB.GetTakeItemOnLayer(0,curTakeItem)
    curTakeItem.GetGroup(seqGrp)
    Scene.GetDatalinqKeys(keys)
    //counter
    keys.GetKeyByName("ROW", key)
    keys.GetKeyByName("CHECKROW", checkey)
    //values from datalinq
    Scene.GetObjectByName("MESSAGE",Controle)
    Scene.GetObjectByName("CHECK",checknext)
    //Checks next row.
    if not checknext.Text = Controle.Text then
    seqGrp.Pause
    key.AsString = (CINT(key.asString) + 1)
    checkey.AsString = (CINT(checkey.asString) + 1)
    scene.RefreshDatalinqs
    engine.DebugMessage("increment",0)
    else
    seqGrp.Resume
    scene.SceneDirector.stop
    end if



    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------



  • 3.  RE: Carousel with single scene, but mulyiple datalinq results

    Ross Staff
    Posted 01-10-2024 06:09

    do you have all the required objects for this script to work?

    Do you use debug monitor? 



    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 4.  RE: Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 07:45

    I have a scene with a timeline in which the first part is general information. This is transferred to the first block of information, after which the counter is added up at the end and it is checked whether the next value exists. If it can be extracted from datalinq then it goes back to frame 30 with the new values.the only thing I can't check is the value of my 'Keys'. Maybe that counter doesn't work. 

    So maybe the question is more: how do I check this counter during online? And do you see any other rarities

    hereby my file for more information

    https://we.tl/t-Sqkw9p4Jcb?



    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------



  • 5.  RE: Carousel with single scene, but mulyiple datalinq results

    Ross Staff
    Posted 01-10-2024 07:46

    Are you using the debug monitor? 



    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 6.  RE: Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 07:50

    i'm only using the live log. Is this what you meant?



    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------



  • 7.  RE: Carousel with single scene, but mulyiple datalinq results

    Ross Staff
    Posted 01-10-2024 08:08

    This one that will tell you errors with your script, it's pretty much impossible to script correctly without it. 



    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 8.  RE: Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 08:46

    Found it! Useful!

    An error came up for me, but it has nothing to do with the script I'm stuck on. I'm going to do some more research.



    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------



  • 9.  RE: Carousel with single scene, but mulyiple datalinq results

    Posted 01-10-2024 14:25

    I've almost figured it out... 

    I now have a script and timeline, which keeps running in a loop, until all the values have been taken. However, there is also a code for closing the current scene, so that it continues to the next scene in the carousel. Or is there something to start the next scene right away?

    "scene.Scenedirector.stop" stopt bij mij de scene... en hij moet dus doorgaan in de sequenser naar de volgende scene.

    'define vars voor ophalen en optellen...
    dim keys as xpDatalinqKeys
    dim key, checkey as xpDatalinqKey
    dim checktext as xpTextObject
    Scene.GetDatalinqKeys(keys)
    keys.GetKeyByName("ROW", key)
    keys.GetKeyByName("CHECKROW", checkey)
    Scene.GetObjectByName("CHECK",checktext)
    'als einde is bereikt -> next item
    if checktext.Text = "1" then
    'reset getallen....
    key.AsString = 1
    checkey.AsString = 2
    Engine.WriteToLog("Next Item")
    'STOP go to next item in sequenser
    scene.Scenedirector.stop
    else
    key.AsString = (CINT(key.asString) + 1)
    checkey.AsString = (CINT(checkey.asString) + 1)
    end if
    scene.RefreshDatalinqs
    Engine.WriteToLog("Refresh")


    ------------------------------
    Harm Dijkman
    RTV OOST
    ------------------------------