Create a second calendar for users in Exchange 2007 - calendar

I need to programmatically create a second calendar for all our users in Exchange 2007. Can someone suggest the best way to get this done?

I believe you can do this using EWS. You want to create a folder of type, calendar. See here to get started.

Related

Where can I get Jira's database structure for service desk?

I want to build service desk dashboards and I want to look at a database structure with a ticketing system to understand exactly what am I going to need. I am working with Jira already and I wanted to check its database, but I haven't found what I need.
Thanks in advance!
On the administrator's System page sidebar, there's a "Plugin Data Storage" menu item that will show you what database tables correspond to each add-on. From there you can see that Service Desk table names usually begin with AO_54307E.
You shouldn't need to access the database directly. Check https://docs.atlassian.com/jira-servicedesk/REST/server/ for whether the information you need is available via the REST API.

"Out of office" Calendar in Office 365/Outlook

All,
I was wondering if there is any way that you know of to automatically populate a Calendar in Office 365/Outlook based on what other users enter to their calendar.
The HR manager wants to have a calendar that shows when employees are out of office all in one place. Having a shared out of office calendar people can "invite" makes sense, however he believes people will forget to do this and it wouldn't be effective!
I've so far found no obvious way of doing this.
Thanks in advance.
The closest built-in feature to a global or master calendar is not a single calendar, but the ability to overlay multiple calendars in Outlook's Calendar module. External calendars would of course have to be shared/delegated to you first, but you would at least have a central point to view appointments from multiple people using this method.
However, if you prefer a single Calendar but need appointments from other Calendars in it, then you're definitely looking at synchronization - but you can't synchronize multiple calendars in Outlook natively. For that you'll need to look at a custom solution (such as an add-in) or third-party tools:
http://www.slipstick.com/outlook/sharing/more-tools-and-utilities-for-sharing-data/
You could develop an app or a service that uses Outlook Calendar REST API.
Your service would poll the employees calendars, compare their status with a local database and create new events on your shared calendar using again the Outlook API.

The suitable way to import data to CRM ( Smartsheet) from website?

I'm doing wordpress website. And what i wanna do is: when user send contact form ( include their information) or user register, their information is added to CRM directly.
What i wonder is :
1) I should write my own plugin to do these things? possible? Because I think it will get the problem of permission ( when access to CRM)
2) There is a contact plugin which data is saved to database. Can we do cron tab to add data every period of time?
Can I ask you guy:
Are 2 above ways possible?
Are there any easier and possible way to do?
Really appreciate your help.
It's quite possible for Smartsheet to receive such information through the Smartsheet API. To help you get started with connecting to the API with PHP, and sending data to your sheet, I recommend looking at the Smartsheet Platform PHP Samples.
For your particular situation I would look at the Sheet Structure sample.

How do I create an Outlook calendar subscription from my web/app server?

I have a website that is a calendar with all the basic features (ASP.NET MVC and SQL Server). People can enter events, view others events, etc. One person asked me if there was a way they can see these events in their Outlook calendar - as a second calendar.
I have all of the data on the server. Is there a recommended way to have Outlook point to my web server or DB for a calendar? I see there are ways to generate iCal files from C#.
If so, how would this data stay in sync as new events are created, deleted, etc? A one time dump would be ok but the concern would be that the data would get stale. Is there a solution that would keep the reference dynamic to keep them in sync. (it would only need to be a one way transfer, i don't expect the need to create or delete from Outlook, so outlook is just read only)
I think you can create iCalendar file,then publish it ,so let clients subscribe your internet calendar because internet calendar subscription is periodically synchronized with a calendar that is saved on a web server,and any updates to the internet calendar are downloaded automatically into MS Outlook.
You can use DDay.Ical library for creating (.ics) files using C#.
assuming your question is about how to keep the client and server side synched, and since you only mention outlook as client, there is a custom way to control the update frequency: microsoft has a custom calendar property: X-PUBLISHED-TTL (see microsoft msdn calendar)
2.1.3.1.1.15 Property: X-PUBLISHED-TTL
Brief Description: Specifies a suggested iCalendar file download frequency for clients and servers with sync capabilities.
however note that this property being custom will be ignored by other calendars
You could try to keep track of the SEQUENCE of updates to each calendar entry in your database, and add a trigger on your table of calendar events so that it would automatically send event updates when something changes. Each update would have a higher SEQUENCE property than the updates that came before it, but the UID (the event's unique identifier) would remain the same.
For this to work, though, you'd need to be able to send iCalendar events from within your SQL Server, which can be possible using the following CLR project:
github.com/EitanBlumin/sql-clr-ics

How to I access reports programmatically in SalesForce using Apex

I'm trying to write an app on the SalesForce platform that can pull a list of contacts from a report and send them to a web service (say to send them an email or SMS)
The only way I can seem to find to do this is to add the report results to a newly created campaign, and then access that campaign. This seems like the long way around.
Every post I read online says you can't access the reports through Apex, however most or all of these posts were written before Version 20 of the API was released last month, which introduced a new report object. I can now programmatically access info about a report (Such as the date last run etc) but I still can't seem to find a way to access the result data contained in that report.
Does anyone know if there's a way to do that?
After much research into it, I've discovered the only way to do this at the moment is indeed to scrape the CSV document. I would guess that Conga etc are using exactly this method.
We've been doing this for a while now, and it works. The only caveats are:
Salesforce username / password /
security token has to be shared to
the app connecting. If the password
changes (and by default it is changed
every 30 days or so) the token also
changes and must be re-entered.
You have to know the host of the account, which can be difficult to
get right. For instance while most european accounts would use emea.salesforce.com to access CSV, our account uses na7 (North America 7) even though we're located in
ireland. I'm currently sending the page host to the app and parsing it
to calculate the correct subdomain to use, but I think there has to be a
better way to do this.
Salesforce really needs to sort this out by supplying an API call which allows custom report results to be exported on the fly and allowing us to use OAuth to connect to it. But of course, this is unlikely to happen.
In the SalesforceSpring 11 update, it seems you can obtain more informations about the Reports:
As stated in the API for Report and ReportType, you can access via Apex the fields used in the query by the Report, reading the field "columns", as well as the field used to represent the filters called "filter".
Iterating through this objects, should allow you to build a String representing the same query of the Report. After building that string you can make a dynamic query with a Database.query(..) call.
It seems to be a little messy, but should work.. (NOT TESTED YET!)
As header states, this works only with Custom Reports!
Just to clarify for fellow rookies who will find this, when the question was asked you could access your report data programatically, but you had to use some hacky, error prone methods.
This is all fixed, you can now access your reports via the API as of Winter '14.
Documentation here - http://www.salesforce.com/us/developer/docs/api_analytics/index.htm
Go to town on those custom dashboards etc. Cross posted from the Salesforce Stack Exchange - https://salesforce.stackexchange.com/questions/337/can-report-data-be-accessed-programatically/
But Conga (appextremes) do this in their QuickMerge product, where the user specifies the report Id, and the apex script on the page runs the report to extract the results for a mail merge operation.
the v20.0 API added metadata about the reports, but no way to actually run the report and obtain the results. If this is a standard report, or a report you've defined, you can work out the equivalent SOQL query for your report and run that, but if its an end user defined report, there's no way to do this.

Resources