In this blog post we'll detail some quick tips for working with Project Siena.
Update: Thank you for all the questions in the comments! We've created a forum for discussion of all things Project Siena (including questions and answers), so please stop on by for more help: http://social.technet.microsoft.com/Forums/en-us/home?forum=projectsiena
Project Siena uses Excel-like expressions (or functions) that allow you to add custom logic, behavior and interactivity to your apps.
For a full list of currently available functions, please see Project Siena Function Reference (http://aka.ms/ProjectSienaFunctionReference).
When authoring expressions, it's useful to keep these tips in mind:
Project Siena supports a number of ways to work with your data. For a full list of supported data sources, and instructions on how to connect, please see the Project Siena Release Notes (http://aka.ms/ProjectSienaReleaseNotes) and website (http://aka.ms/ProjectSiena).
You can easily embed images and videos into a Siena app. You can also link to images and videos that come from a remote location or from a web service.
Here is a simple way to bring in a single image or video:
To bring in your image or video, you can either:
If you want to use multiple images or videos in your app, the easiest way is to use Excel as a data source (another way is a web service that fetches images or videos – for more details, please see our Help Topics [http://technet.microsoft.com/en-us/dn518216]).
Here are the steps:
The current Project Siena beta works with text-only feeds and does not automatically parse out images or HTML.
To connect to an RSS feed:
Note that RSS feeds only sync on the first load of your app. More refresh capabilities are coming in the weeks and months ahead.
To use SharePoint as a Data Source, simply provide the URL to the root of your SharePoint site. For example, "http://myCompanyPortal/sites/MyTeamData". Siena will find all applicable lists on your SharePoint site.
Note, do not point to a particular list URL or asmx.
Project Siena beta currently only supports On Premise SharePoint. SharePoint Online support is coming in the weeks and months ahead.
For instructions on how to connect to Azure Mobile Service tables, see the Release Notes (http://aka.ms/ProjectSienaReleaseNotes).
These are just a few tips to make working with Project Siena even easier.
Please enjoy, and have a Happy Holidays!
I want to create a link to Internet in one of my projects. Can I do it? I can only "navigate" through screens. Thank you!
I realy enjoy this lovely tool... :) But one Q, could someone do a walkthrough of Publishing an App to the store? I've triend, but keep getting errors like these: Validation error: Your developer account isn't authorized to publish apps that use the "enterpriseAuthentication" capability. Learn more Validation error: All packages for this app must use the package identity name: 42681Holte.Teslafan Learn more Validation error: The PublisherDisplayName element in the app manifest doesn't match your publisher display name. Learn more Validation error: The Publisher attribute of the Identity element in the app manifest doesn't match your publisher ID, which is: CN=E0496E98.... Is there some settings in Siena I dont see or what? I have 2-3 Apps I would love getting out in the store ASAP... :) Marry Xmas btw :)
Hi. Although this actually has nothing to do with this blog post, I still think I'll post my question here: what am I doing wrong? Every time, when I install the Siena app, I start it, but it closes immediately. Why is this? Does it have to do with the region where I live (the Netherlands)? Thanks in advance, and have a happy holidays too!
Anonymous: To link to a website use the Launch command like Launch(“http://www.bing.com”). The documentation of all the Project Siena functions is here:
Anonymous: You cannot publish apps created by Project Siena to the Windows Store. See section 3.9 of the release notes titled: 3.9 APPS PRODUCED BY SIENA CANNOT BE PUBLISHED TO WINDOWS STORE “AS IS”.
First of all, I really like the tool. But I ran into a some issues with rest services, third party services to be more specific. These services rarely return data only 1 level deep. Is there any way to use a datasource that returns something like 'Datasource.value.items', where 'items' is the list of items I need in the gallery. The first level can be accessed through 'Datasource!value'. How can I get to 'items'?
For a service that returns hierarchical data, try the First operator to return a table. For example, First(servicename)!fieldname. For unraveling deeper nesting, try First(First(servicename)!nestedfieldname)!fieldname.
Hi Ben, great solution, i love the idea.
I'm trying to connect using Dynamics CRM Online REST endpoint (via Office365 auth) to show some data from there, but i cannot connect. Did you test or you have an example of this scenario?
Thank's a lot and keep doing this kind of great work!
Siena is absolutely great, thank you! Is there a way to include code that you want executed at the app initialization (loading data, preparing collections etc.)? I was trying some workarounds (like a timer with auto-start but I could not get it working). Thank you!
Say I was building a contacts application with Excel table as a datasource, can the user add new entries (rows) into the excel DataSource? How do we do this? This is pretty fundamental building block of any serious application, being able to store data persistently
I also have question how to store data in excel. PLEASE HELP US !!! If this is not possible now will you add that option in next release? Second question is if there will be any possibility to export Siena project to Visual studio in future. Thanks
Demian Adolfo Raschkovan: Office 365 auth is not supported in Beta. Support will be coming as a part of SharePoint Online support.
Anonymous: App start-up initialization can be achieved by using OnVisible behavior property on first screen of your app.
Anonymous/ptr.chovan: To modify data imported from Excel, it is necessary to add it into the collection first. i.e.:
Button!OnSelect = Collect(myCollection, TableFromExcel)
Collections can be persistent in Windows 8 application storage using SaveData and LoadData i.e.:
SaveButton!OnSelect = SaveData(myCollection, "mySavedCollection")
LoadButton!OnSelect = Collection(myCollection, LoadData("mySavedCollection"))
Also Import/Export visuals allow to save/load data from any location on your hard drive.
1. Add an Export visual.
2. Set the property Data = MyCollection
3. Click the Export visual to export the collection. Use the file picker to save the collection to a file.
1. Add an Import visual.
2. Click the Import control. Use the file picker to target a previously exported file.
3. Now you can now use the output property of the import visual: Import1!Data. (E.g. CustomGallery1!Items = Import1!Data).
my first question would be is there any future plan that support uploading the app created from Siena to the store? thanks
Great initiative! I have a question about multiple images.
Why can't I see my multiple images?
I have created an excel table as described above. I have loaded into Sienna. The image frames remain empty. Also in the data file the image frames are empty.
What is it that I need to do?
Why does the image for the published app not appear?
I have published my app (file, publish).
I have selected an image as advised (245x245, transparent .png). Still the image does not show.
It does show in the example, when in the process of publishing.
After installing however the image does not show. Only the background.
I have tried several (jpg, png, transparent or not, different sizes, different resolution), nothing seems to work.
Thank you very much Anatoly. Saving and loading works great. You had one mistake in loading LoadButton!OnSelect = Collect ... NOT COLLECTION. The Export works great as well but when I try to import the file it does nothing. I chose the exported file and nothing happened. I also added extra button to assign imported file to gallery and still nothing. And Please how should I use addColumns ??? I tried everything and it just doesn't work. Does it actually works? Thanks