Azure Logic Apps Control Actions Tutorial | Loops, Conditions, Parallel Runs

Поділитися
Вставка
  • Опубліковано 26 жов 2024

КОМЕНТАРІ • 102

  • @noealves8400
    @noealves8400 4 роки тому +8

    Hey Adam, one of the things I love the most about your video is that you create all logic aps from scratch every time! and you also show step by step every time. This allow us to learn by repetition! Very good method. I can't wait to see the new videos you'll be creating!

  • @meenakshisudhakarok2112
    @meenakshisudhakarok2112 4 роки тому +2

    I am just starting with Logic Appa, and this is really helping me. Thank you so much !

  • @chandra4996
    @chandra4996 3 роки тому +1

    I am starting with logic apps it is really amazing, thank you so much

  • @sachinborkar416
    @sachinborkar416 4 роки тому +1

    Thanks Adam for step by step demo. You really make it easy to understand.

  • @arulmouzhiezhilarasan8518
    @arulmouzhiezhilarasan8518 4 роки тому

    Thanks Adam! Your valuable explanations with step by step demo, really makes us much more easy to understand and working with Azure. I have tried each things that you have explained in this video practically and it really helped me to thing in many ways for problem solving in Azure.

  • @vipin0114
    @vipin0114 3 роки тому +1

    Very well explained and really helpful to understand the concept 🙏

  • @salehalsherif5881
    @salehalsherif5881 3 роки тому +1

    Cool videos with clear short explanations Keep it UP

  • @amitgarg2313
    @amitgarg2313 3 роки тому +1

    Excellent Video Adam

  • @GiovanniOrlandoi7
    @GiovanniOrlandoi7 3 роки тому +1

    Great video Adam!

  • @vinothrajendran858
    @vinothrajendran858 3 роки тому

    Covered the important concepts. Thank you :)

  • @vijaykumar1306
    @vijaykumar1306 5 років тому +1

    Very nice scenarios and step-by-step explanations! Please try to upload more videos for more Azure PasS and SaaS services with same level of quality :)

    • @AdamMarczakYT
      @AdamMarczakYT  5 років тому +2

      Thanks Vijay, will do. Currently uploading at rate of 1 video per week. Every Monday, stay tuned for more :)

    • @vijaykumar1306
      @vijaykumar1306 5 років тому +1

      @@AdamMarczakYT Excellent, Adam. Thank you :)

  • @gauravjoshi5054
    @gauravjoshi5054 4 роки тому +1

    thanks a lot for your valuable explanations. Respect your effort 👏

  • @aswathsivavaram7861
    @aswathsivavaram7861 3 роки тому +1

    Thanks ...Adam ,,I like your videos and do more videos on .Net Microsoft tech's

  • @khushbugupta5849
    @khushbugupta5849 4 роки тому

    Very well explained able to understand the concept very clear thanks for the uploading such videos

  • @DPJFAUG
    @DPJFAUG 4 роки тому

    Great stuff Adam. Like the video

  • @atimuktjain4471
    @atimuktjain4471 5 років тому

    Very Nicely Explained the concepts .....Thanks for the video.

  • @pavankumars9313
    @pavankumars9313 2 роки тому +1

    Hello you are doing great job thank you

  • @shailavijay1
    @shailavijay1 3 роки тому +1

    Amazing Explanation & demo. Thank you so much. Could u please let me how to run batch of files from blob storage with single Logic App instance in one shot blob trigger

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому

      Select "..." three dots on blob trigger in the logic app and disable spliton setting. This will run logic app in batches. Thank you.

  • @sibymathew1802
    @sibymathew1802 4 роки тому +2

    Hi Adam,
    4 clarifications :
    - In parallel executions, would there be a race condition when trying to delete a blob and use the same entity variable to create a log in parallel ? Would there be any benefit in assigning these values to a variable before using it in parallel ?
    - You had copy/pasted guid() directly into the field at 11:41 . I think this will not work if its not added to the "Expression". Am i right ?
    - In the "Until" control there is an option: "Count" within settings. By default this value is 60 and should be increased if our loop goes beyond that.
    - I suppose "Scope" would not be transactional, in the sense reverting any change if an entity has failed within ?
    Thanks again for your wonderful videos..

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Variables are globally scoped so you shouldn't use them in parallel or in parallel loops. If you need local variables use 'compose or parse json' actions or simply call separate logic apps in parallel. Expressions that are pasted directly into the field must be properly formatted. As an excersise copy guid() expression from a field and paste it into notepad, you will see that text was escaped via expression brackets like so @{guid()}. Count in until i maximum amount of loops to ensure you won't do infinite loops by mistake. Scope is just like try/catch in a programming language. Scope is a try block.

    • @sibymathew1802
      @sibymathew1802 4 роки тому

      @@AdamMarczakYT Thanks for the clarification.. so you mean even though you pasted guid() inside the field it would work..?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      I think this no longer works like that. You need to paste either "guid()" string into expression box or paste full escaped expression into the field "@{guid()}".

    • @sibymathew1802
      @sibymathew1802 4 роки тому

      @@AdamMarczakYT okay that makes sense...thank you !

  • @webdeveloperify
    @webdeveloperify 4 роки тому +2

    Nice information. Thank you so much. Can I please ask how to import and export the logic app from one environment to another.
    Thanks in advance.

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      Hey there are many approaches to do this but one I like recently is using Jeff Hollan's extractor available here: github.com/jeffhollan/LogicAppTemplateCreator

  • @ritikgarg1398
    @ritikgarg1398 3 роки тому

    Great great stuff!

  • @mohanreddygottam9535
    @mohanreddygottam9535 4 роки тому +1

    The video is very good and helpful. Thank You
    Are multiple conditions possible in Switch? I mean, while using switch how we can provide multiple conditions ( Ex: A=B or A=C and A=D)

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Thanks! Try doing parallel branches and checking in the branch for conditions. Switch always chooses only 1 path, not multiple ones. It works like that in all programming languages too.

  • @believeinyourself4266
    @believeinyourself4266 4 роки тому +1

    well explained

  • @tipums123
    @tipums123 3 роки тому

    Nice video Adam!
    Can I use "When a file is added or modified" to check multiple folders for a new file?

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому +1

      Blob storage doesn't have folders. It's a flat hierarchy of files in a container. If your file name consists slashes like /demo/test/myfile.csv then demo and test will be displayed as folders but they are not folders, just virtual ones. So setting when file is added or modified then it will work for all files and virtual folders in the container. Thanks for watching :)

    • @tipums123
      @tipums123 3 роки тому

      Thanks Adam!

  • @jagkoth
    @jagkoth 4 роки тому

    I like the fast forw session. please do the same so that u can cover more on each services.

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Thanks :)

    • @jagkoth
      @jagkoth 4 роки тому

      @@AdamMarczakYT an video for azure service bus ?

  • @Tharun459
    @Tharun459 4 роки тому

    Good stuff Adam, if we want to implement execution of pipelines in logic apps.. can you share a quick demo on it if possible.. Curious to know how could we implement error logging mechanism of ADF using logic apps..
    Thanks in advance.

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Thanks! Feel free to check my ADF trigger video which shows execution of ADF pipeliens from logic apps.

  • @fun_facts168
    @fun_facts168 2 місяці тому

    Hi Adam,
    I am trying to terminate my logic app flow inside for each condition but it is throwing an error of "The operation terminate cannot be used inside a for each"
    Any suggestions

  • @amritarora8897
    @amritarora8897 4 роки тому

    You are Genius ! Thank you

  • @harshit7577
    @harshit7577 3 роки тому

    Hi Adam, I understood the concept, It is really helpful. I have another scenario that how one logic app performs multiple action one by one, how to achieve it? so for example LA first calls to Parsing Azure function (that azure function can call another azure function ) and pass the result to LA and 2) step LA need to validate the data and if it is ok than 3) step need to store in blob so how to achieve this? your gaudiness? Thanks!

  • @techwithazam6992
    @techwithazam6992 4 роки тому

    Great content Adam and very precise explanation! I have a use case in which I want to create a trigger on a collection of blobs created in a specific container, since generally even if we upload 3 files in a container, 3 triggers will be fired... i want to get one trigger fired, so that, in logic apps, I can read file names and addresses of all those files (let's suppose 3), and then to pass on these file names to data factory which reads these files and inserts in a database. Kindly let me know how such a multi-blob trigger can be created! Thanks

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Thanks. For batch processing simply click on the three dots "..." on the trigger and unselect spliton option. Once you do it trigger will return a list of blobs instead of one.

    • @techwithazam6992
      @techwithazam6992 4 роки тому

      Many Thanks Adam!

  • @ManuelrPM24
    @ManuelrPM24 3 роки тому

    Excellent video, keep up with the outstanding work! I'm having an issue when I click on Go to Resource, the error is Microsoft.WindowsAzure.Storage: Value cannot be null. (Parameter 'connectionString'). any thoughts?

  • @sindhukontham6993
    @sindhukontham6993 Рік тому

    Hey Adam, i have a doubt..when we wanna delete any blob in parallel or conditional execution, instead of list of file name why we are selecting list of file path? actually i tried with list of file name first and ended up failing. Wanna know the explanation behind it please.

  • @Praveenkumar-zn5wi
    @Praveenkumar-zn5wi 4 роки тому

    Well explained. Can you please make a video on consuming rest api with dynamic parameters...

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      Thank you. I will definitely do more videos on Logic Apps, in fact since this is my favorite service in Azure I've got some cool episodes in plans.

    • @Praveenkumar-zn5wi
      @Praveenkumar-zn5wi 4 роки тому

      @@AdamMarczakYT Thanks.. Also can we trigger Data Factory pipe line from Logic app?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      @@Praveenkumar-zn5wi Yes you can :) Check my video on Data Factory triggers, it shows demo how to trigger data factory from Logic Apps. ua-cam.com/video/uF3LOCVFHkw/v-deo.html

  • @rajun1635
    @rajun1635 3 роки тому

    Thanks Adam, amazing video. I am looking for a way to email failed logins reports from azure active directory(Sign in logs) automatically. Is there a way to accomplish this using logic apps or logic analytics? Thanks,

  • @KrishnaList
    @KrishnaList 4 роки тому +1

    Adam
    Could you create Integrated Account video Series

  • @siddhantsingh275
    @siddhantsingh275 3 роки тому

    Hey Adam, you uploaded an image file and a zip file (2 files) in the condition demo. Why did it only pick up the image file?

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому

      Watch the entire video, it's been explained :) or point me to video time mark where you see the issue

  • @vaasu
    @vaasu 4 роки тому

    Adam, Awesome presentation on Logic Apps. Can we call SaaS Rest API's through Logic Apps and what all the steps we should create if you want to extract data from Rest API to blob storage? Thanks in Advance!

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Hey. You can start with schedule based logic app and use HTTP request block to query rest api and download data. Saving to blob is fairly easy from that point onward :)/

    • @vaasu
      @vaasu 4 роки тому

      @@AdamMarczakYT Thanks Adam! What is the best approach to call from external SaaS REST API to Azure SQL DB - for exraction through ADF or Logic Apps which is more reliable if we need real time streaming from API's to Azure SQL Database?

  • @gopinathrajee
    @gopinathrajee 4 роки тому

    Adam, from my personal account, can I create App Registration and use it in Azure Logic Apps to communicate with Azure Analysis Service. Or do I have to have a tenant of my own?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      You don't need to have your own tenant. Just go to the AD and create the app. I have article on this feel free to check it out marczak.io/posts/2019/06/logic-apps-refresh-analysis-services/

  • @sudheerk3753
    @sudheerk3753 2 роки тому

    Hi Adam, This is Sudheer. I need one help in logic app I want to create a logic app where there are multiple files in multiple folders how can I create a condition where it will go to find it in nested loop. If you don't mind can you please help me with this.

  • @satyateja688
    @satyateja688 4 роки тому

    Adam, very well explained. I have scenarios like multiple approval processes using logic apps. I have 2 approvers everyone should approve. if anyone has rejected, the request got rejected. I have been tried for single approval it is working fine. could you give me some inputs for the multi approval process?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Logic App approval flows are very simplistic. You need to built that logic yourself. I probably would use parallel action block and send two approval emails. If they both complete then it's approved. If one of them is completed I'd check if it was rejected, in which case I'd finish the run earlier. It can be done.

  • @adityashrivastava860
    @adityashrivastava860 4 роки тому +2

    What is guid() here and how is it different from other functions? Can anyone explain briefly?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      It returns globally unique string. Check function reference for details: docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference#guid

    • @adityashrivastava860
      @adityashrivastava860 4 роки тому

      Thanks Adam!

  • @gopinathrajee
    @gopinathrajee 4 роки тому +1

    Just so that others are also aware. The Logic App UI is not good at simple error checking.
    The different emails allowed are Office365 and Outlook. Outlook here means either outlook.com or hotmail.com. I was testing with my hotmail id and later had to switch to gmail to play with send and recieve ids. It took me quite sometime to figure out the app is not working because I had my gmail account. The app even did not error when I added the gmail account and when it executed.
    I spent several hours troubleshooting only to realize my silly mistake!!

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      Yea! A common mistake indeed :) I think this one was returning unauthorized issue which indeed is a not so well descriptive. Thanks for sharing your case with others here ;)

    • @gopinathrajee
      @gopinathrajee 4 роки тому

      @@AdamMarczakYT From the Output, how do we capture various parts of it into variables that can be further used in the next step? The next step is a an Email Action step that would send out emails mentioning that it connection succeeded or failed. If it succeeds, in the output portion of the window, I get a status code of 200 along with a some json string in the Body section.
      Is there a way to capture these two and use them in the email step?

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      To parse outputs into variables use Parse JSON action or initialize variable action, parse json is more suited to your scenario. To build your own objects (complex types) use compose action.

  • @mallinyku
    @mallinyku 4 роки тому

    excellent

  • @nimsayunab
    @nimsayunab 5 років тому

    Good. Thanks a lot

  • @snehalgawari4258
    @snehalgawari4258 4 роки тому +1

    Hi, I am struggling to create logic app, which is having http request and in request we need to decide whether to read request or write request

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому

      What kind of issue are you having?

    • @snehalgawari4258
      @snehalgawari4258 4 роки тому +1

      @@AdamMarczakYT Hello Adam, thank you so much for reply,
      Request which we are going to make to http are :
      1. Read from Db
      2. Write to Db
      For now passing one element which checks json element RequestType,
      -Read or
      -write
      At payload I have passed json for write request
      So true part is getting executed
      At false part I am expecting to execute read json but as payload is different it is throwing bad request which is obvious ..
      Still finding out ways

    • @AdamMarczakYT
      @AdamMarczakYT  4 роки тому +1

      You can supply JSON schema to HTTP request body so that RequestType is available in later steps as variable or use TriggerBody() expression and get RequestType from it. It would probably be something like TriggerBody()?['RequestType'] (typing from memory so might be incorrect). And then simply do condition on it. Best of luck!

    • @snehalgawari4258
      @snehalgawari4258 4 роки тому

      @@AdamMarczakYT thank you so much, followed exactly same approach, it worked, appritiate your time👍

  • @joyyoung3288
    @joyyoung3288 3 роки тому

    it is not working for latest trial version of azure, the table blob is not good.

    • @AdamMarczakYT
      @AdamMarczakYT  3 роки тому

      This tutorial is still valid, there is a new User Interface in logic apps but they still work in the same manner.

    • @user-eg1ss7im6q
      @user-eg1ss7im6q 3 роки тому

      you are right, my mistake, it actually works. thanks!