Sorry for delayed response and again many thanks for your inputs ,and as you suggested , I implemented Show_id expression to every view , and put the expression count>0 , for every view expect for registrations view for which I put count=0 as you pointed out in last reply
I also added Menu views and on that too, I set the expression count >0. after implementing this , I sync the view and tried to view as other user , but I am still able to see All views only the the home view which sits on bottom isn’t showing up when I preview App using different email ID.
I am not completely certain what you are doing BUT I think your expectations are probably not quite accurate in the way the emulator works. By switching users and simply Syncing the app, you are not really re-starting the app as when a new user accesses it. You are simply refreshing the app view with new user viewing properties and AppSheet will continue displaying the last know view - i.e. that view will not automatically disappear.
You might try refreshing the web page itself. That might help a little but there are still some known side effects where the App Creator properties/credentials are used within the app … even when viewing as another user.
AppSheet also tries to open the app to the last view in use when a user closes the app. So attempting to “restart” as new app user with the App Creator account doesn’t work. Maybe there is a way to “reset” the app to its new state for the App Creator but I am not aware of it if there is.
To truly experience what a new user will when they first access the app, I would recommend accessing the app on a mobile device as the desired NEW user. This will give you a more realistic experience of what that user will see. Once you have registered with that account, in order to start all over to test again, I believe you would need to delete the app and re-install.
Thanks for your inputs John. Here , I am just trying USERS which is already have entries in Registrations tables able to access all views and if user happen to be the first time user , he should be presented the FORM where in , he can input his details and after that , He is allow to access the App. Since , I update all the views with the COUNT >0 , and thinking this can help achieve what I intended to achieve. I will certainly try with using this on other Mobile and see , if that user allowed is restricted or not.
In continuation to my previous post, I did try installing the APP on other mobile , but it seems , it behaving similar to what I pointed out last time. When I tried using different user on different mobile , it still shows all the views to other mobile user , but the only difference I saw , the view presented in bottom of App did not had home view while working as other user and if the USER happens to be the one which has entry in registration table , then the home view is visible in bottom. Please let me know for any other details which is required.
Bottom view while logging as other USER
Bottom view while logged in as registered USER
Want all of the view highlighted as RED not to be shown while logged in as other USER.
Can you show what your app looks like and what you have done so far to hide views?
One thing that is different in what you have shown is that the red highlighted “views” are rows in what appears to be a Deck View. I assume then you are creating a “custom” menu using the Deck View and you want to hide these rows?
If the above is correct, I would recommend to hide the entire “Home” view until the user is registered. So, if it is an unregistered user, hide EVERYTHING…except the new user registration form.
Have you applied “hide” expression to the Home view itself?
Sorry for the delayed reply John. I now managed to hide views which were created as deck view view by going to DATA → Security filter and applied the formula as suggested by you. “COUNT(SELECT(Registrations[Registration ID], [Email] = USEREMAIL())) > 0”. Here , I am unable to understand that why , it didn’t work on VIEW.
Now, I want the user to get some message like “You need to register yourself” before you may actually use the APP. Also , the form should be visible by default as user installs the App.
Again , thanks a million for your help !! With your help , I think I should able to achieve my target
Security Filters affect the rows that are downloaded to the app from the server. By applying the formula to the Security Filter you are effectively not allowing any of the rows of data to be loaded for an unregistered user - which is not a bad thing. But this should not / would not control the showing or hiding of the views. Views will display even if there are not rows to be displayed.
I don’t have enough details to know why the views were not hiding with your previous attempts. But if it appears to be working then roll with it. Any problems will likely shake out as you move forward in the implementation.
As for the message, I would recommend including a SHOW type text column at the top of your registration Form that contains your message. You can use Format Rules to make it stand out.
To make the registration form the default upon install of the app, look at the Start View property under the UX->Options tab.
Thanks John for your help here , but I am afraid , I am still not able to get to the option where I can set default message and make form as a default one. I tried to use Registration columns , but did not find column “show type”. I would appreciate , if you could help me showing up which section to navigate while enabling or setting up such options.
In continuation to my previous post, I tries to use formula for which if user is not registered then the start VIEW should be as form. But , when I refresh the App , the registered users also seeing the registration form and I think , it should only be visible
to unregistered USERS. The other thing for which you mentioned as how to display message to unregistered USER , I am still struggling to find option for the same.
It would be more helpful if we could see how you have implemented the expressions - Starting View as well as those to show/hide the views.
Starting View is only ever applied once after app install. AppSheet has another feature to “remember” what view a user left off at when closing the app and will return to that view when app is opened again. Deleting the app and re-installing will re-activate the Starting View expression again. You may need to delete and re-install the app to properly test the Starting View expression.
“Show” is a column data type. For your message I would recommend adding a virtual column. Then change the column data type to “Show”. Inside of the column editor, in Type Details section, change the Category to “Text”, then insert you message. Next, in the view, add this new virtual column as a field to the top of your registration view. See images.
I implemented the start view as “user registration”. Since I want non listed users should able to see registration form with some message. Here, I was able to show message to the user while registering and it’s showing in the bottom , but I was looking to create message which should say something similar to “First Register” and then show the registration form to user…
Following is the image for the user which is not registered and here , the Registration icon is visible in the bottom pan of the App , but I was looking to display the form screen attached and showing it as a default one.