What is eForms and documents in Exchange Online's public folder - outlook

According to the introduction of public folder, we have this statement:
Public folder content can include email messages, posts, documents,
and eForms.
I already searched for a while and asked for MS support, but with little help.
Some possible alias name:
eForm
Microsoft Forms - can attached to a message which is sending to public folder address
Organizational Forms - use outlook desktop to create a tpl for post item
documents
Ambiguious naming to document library in Share Point, so I have no idea.
Questions:
Is anyone can illustrate how to create eForm & documents in public
folder?
And in deveolpeing perspective, What kinds of item class should those two items be (eForm & documents)?
Thanks for help!

eForms are MAPI forms https://learn.microsoft.com/en-us/office/client-developer/outlook/mapi/mapi-forms-overview and https://learn.microsoft.com/en-us/office/vba/outlook/concepts/forms/forms-and-message-classes.Most people would use SharePoint or other technologies instead of eForms and or Public Folders these day (eg client access to Public folder is limited outside of the Outlook Desktop on windows). Unless you have legacy code your trying to maintain it would be better to avoid either of these.

Related

Getting the appid included in the Record URL(Dynamic) in a Dynamics 365 email workflow

I've been tasked with creating a workflow in Dynamics 365 which can send emails (the easy bit). However, the email has a link to the record (also easy using the Record URL(Dynamic) attribute). However, we use Apps in our Dynamics instance and the link generated by the workflow using Record URL(Dynamic) doesn't include the app id and so when users click the link they are taken to Dynamics but are now outside the app.
My question is, is there a supported way to appending the App Id to the Record URL(Dynamic) attribute?
I've already searched for answers to this and cant find any. My solution was to create an Action which takes as input the Record and app ID, appends them and outputs them as an output parameter. This works to be honest, but I'm wondering if I'm reinventing the wheel and there is an easier way to achieve this.
Thanks and hope this helps anyone else with the same issue.
We can get the Application ID from Xrm.Utility.getGlobalContext();
The application ID is one of the properties that returned
var globalContext = Xrm.Utility.getGlobalContext();
globalContext.getCurrentAppProperties().then(
function success(app) { console.log(app.appId); }, function errorCallback() { console.log("Error"); });
For more details refer to Here
While we are waiting for MS to give the OOB option to choose Model driven app Id & embed in Record url of WF, I recommend you to follow Andrew Butenko’s workaround using Ultimate Workflow Toolkit to achieve it with no code.
This is basically using UWT custom step to append App Id with Record url on the fly.

Dynamics CRM - How to get the Message default display string

Does anyone know how to use C# to get the Default Display String for a Message?
The Default Display String is the first column displayed when you open a Solution, select an Entity (such as Case), and then select Messages. It contains values like "A Parent Case cannot have more than {0} child cases. Contact your administrator for more details."
The DisplayString Entity seems like the right place, but it only has the CustomDisplayString and the PublishedDisplayString, and not the default display string. Microsoft have confirmed that the Default Display String is not in the DisplayString Entity, but they don't say where it can be found...
I have tried searching the Metadata Browser, and even went trawling through the Organisation and Config databases, but no luck.
Any help greatly appreciated ...
While this doesn't answer your question directly, it's a clue.
I checked a bit in the database, then searched for the Account entity message "Existing Account?" in the file system.
It's in this DLL:
C:\Program Files\Microsoft Dynamics CRM\CRMWeb\bin\Microsoft.Crm.Application.Components.Strings.dll
As far as accessing strings in that DLL from C# goes, I'm currently at a loss. You might want to create a MSFT ticket to see if they have any further suggestions. Another thought is that if you're targeting a particular entity, or a few entities, maybe copy the default message to the CustomDisplayString for the messages you're interested in.

Proper project organization and architecture for sharing code in Visual Studio/.NET projects

I'm looking for recommendations on how to best share code between multiple Visual Studio projects. I'm struggling with a fundamental topic and trying to get some ideas to get over it.
My solution has:
Several web app projects
Several standalone process projects, eg Windows Services and/or console apps and/or Azure WebJobs
An example of functionality which is common to all projects is the need to call some common web service, or the need to read and write from Amazon S3, for example.
Where I struggle is this: Obviously the code that implements the common functionality should be broken out on its own, for example in a separate class library project. To talk to S3 for example, the code needs to know my Amazon credentials, S3 endpoints, etc. - all these things would normally be stored in app configuration files. But I don't like the idea of putting config files in class library projects because it binds a particular implementation to them. But in order to not do that, I have to pass in this information from the calling project. So for example the web app's web.config and the console app's app.config files contain this connection information. When calling the S3 code, I would assumingly pass this config info into the shared code.
However, this seems yucky* to me and I'm not sure why. It still feels to me like I'm "binding" the S3 code (for example) to a particular config method, if that makes sense. I'm not sure if my feeling is a mis-formed bias.
*For example, I may have an arbitrary amount of configuration data that would have to be passed in:
Connection strings
Credentials for web services
API endpoints
Arbitrary data from my app's config settings (which some of the callers will need, but others won't, so lots of times the data will just be useless yet I have to do the work of passing something in)
So every time I added a config variable in my main app, I'd have to modify the constructor of the common code. Things would be in constant motion.
Can you give me suggestions on this?
I like to use Configuration objects as parameters, that way the signature never changes, even if you add/remove properties. For instance....
public class AmazonConfigSettings {
public string AWSkey { get; set; }
public string ApiEndpoint { get; set; }
......
}
Your signature could then always look like:
public MySharedClass(AmazonConfigSettings config) { .... }
Even if (when) Amazon overhauls their webservice settings completely.

windows folder for temporary files created by my application

I'm trying to decide where the 'correct folder' to store documents and logs created by my windows form application. The application is used in education and has all paths held in the SQL server. Some (like logs file paths are shared) are accessible on network but specifically for temporary documents where should I default the storage to? I've recently tried the Users/username/AppData/ folder but I seem to be getting differing results after installation; so far I have put this down to people user credentials as often in schools they can do whatever they want (yes I know shocking indeed).
If anyone can point me in the direction of an MSDn article or knows better please reply - Thanks.
** Edit 10/09/2013 - Sorry all I should be further explicit. I'm looking for the folder / structure Microsoft has designed for this sort off activity. My application already provides users with the ability to create thier own working directories (there are several required) but I'm keen to use the 'correct' locations for this sort of activity... I thought the right place would be c:/Users/USERNAME/Appdata/APPLICATION FOLDER/ but as I mention I've come across a few access rights issues when uses install the application.... hope that explains better - thanks
To create temporary directory you can use something like this:
public string GetTempDirectory() {
string path = Path.GetRandomFileName();
Path.Combine(Path.GetTempPath(), path);
Directory.CreateDirectory(path);
return path;
}
Path class info
Directory class info

Can I access a string value from resource dll in windows phone 7 app?

OK, so I've successfully managed to create a localisation resource library for the title of my WP7 app using the msdn tutorial
The app title is therefore stored in a string table within the resource library AppResLib.dll. This resource string is accessible from the WMAppManifest.xml file by using the following code:
#AppResLib.dll,-200
I would like to know if it's possible to access the app title string from a class within my app? My google searches seem to suggest that it's not possible. It's not possible to use a solution as outlined here, as it just returns the string "#AppResLib.dll,-200".
I think the only solution is to define the app title a second time in a localised string resource file as shown here which I would prefer not to do.
Any help would be greatly appreciated. Thanks for your time.
I'm use localised ressources, but it's a ressource file, I want to call my labels, title, and other text ressourecs in all my application (in my c# class and in XAML) .
if you want tutorial ( in french, sorry ) is here (you want to use google translate for translate all page in english )

Resources