We have an enterprise MS Exchange server on the one hand and a different web-based time-management software on the other hand. In the latter the employees request vacation dates but these cannot be viewed by everyone.
So we would like to import the granted vacation dates as dates in outlook for every user, i.e. import it somehow in the Exchange server.
From the time-management software I can export Excel-Sheets month-wise, so I could read those programmatically and push that information into Exchange (e.g. via some C# program). However, I'm not in any way familiar with Exchange, and I don't know under what terms I should google this functionality.
Any hints to APIs or examples?
If you are targeting Office 365, use REST APIs. Take a look at http://dev.outlook.com for more info including Getting started.
If this is an on-premises Exchange 2007 or later server, use Exchange Web Services (EWS). Easiest way to do that is to use EWS Managed API.
Related
Maybe what I'm going to ask is crazy, but it's what they're asking me and I don't know if it can be done.
Is it possible to expose a service oData or Rest with excel? For example, excel is listening to a request and answered the sum of 2 numbers.
Thank you very much for your answers.
Please note that Questions asking to suggest a product are usually discouraged as they attract highly opinionated responses!
While possible, without compatible infrastructure it is usually easier to create your own API, it can still use an Excel workbook as a backend using techniques commonly referred to as Excel Automation.
One MS example: How to automate Microsoft Excel from Microsoft Visual C#.NET
As part of requirements gathering, as this is a very specific request you should ask them to produce at least a set of the queries and the expected URL format that they intend to use.
A request like this usually means they are coming across from an existing platform or they are trying to copy the functionality from another provider/competitor
MS have a general solution for this called Excel Services REST API that allows you to upload workbooks to SharePoint Services and query against them, the idea is that now you can have a single source of "truth", effectively a live workbook without passing around copies of it.
NOTE:
The Excel Services REST API applies to SharePoint and SharePoint 2016 on-premises. For Office 365 Education, Business, and Enterprise accounts, use the Excel REST APIs that are part of the Microsoft Graph endpoint.
The other MS offering that can create a REST interface for Excel is Power BI, basic instruction on how to upload an offline workbook to Power BI can be found here.
I'm offering this advice because I have fielded this type of request from management or clients in the past, it is important to help them fully understand their reasons behind the request before proceeding as there can be significant licensing and setup costs compared to implementing a custom API manually
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 3 years ago.
Improve this question
So I've asked a similar question, but I thought I'd ask it more generally to get as many ideas as possible.
I have Power BI Pro. I am tasked with creating reports for hundreds of recipients, each one personalized to that specific user.
My organization will not pay out for everyone else to have Power BI enabled, although everyone will have an O365 account.
How do I share my reports created in Power BI to users without Power BI? Factoring in there are several hundred of them to produce every week by a team of 2 people.
Thanks in advance!
Right here https://learn.microsoft.com/en-us/power-bi/service-how-to-collaborate-distribute-dashboards-reports
it says
You need a Power BI Pro license to share your content, and those you share it with do too, or the content needs to be in a workspace in a Premium capacity.
But you can always just share the .pbix file locally. This doesn't use PowerBI.Com at all so you can do what you want. You should just be aware that you won't get a lot of the features like security etc.
That's the licencing terms of using Power BI. No way around it. Anything that works around this violates licencing.
Going by your other question.... you don't even need Power BI - you just want a bunch of static PDF's split by department! There are many ways to build a low cost reporting solution that spawns out PDF's, for example SSRS.
Power BI is really not the right tool for operational reporting, even though many people try to shoehorn it into that function. Think outside the square!
As per my comment below, the other way to share reports with non pro users is to buy premium capacity. This only becomes cost effective at high numbers of users though.
Well you can use embed feature of powerbi. Powerbi offers api to get reports and dashboards from your account. You can call the api to get reports and dashboards,embed them in your own application and even store the report id and dashboard id in your database. Then share those reports and dashboards among your users via your own application.
If your users has Office 365 accounts, you can enable their free Power BI accounts, so they aren't "without Power BI" exactly. Sharing reports is Power BI Pro feature, though (i.e. it is paid).
I see couple of options you have.
1) The poor's man solution is to prepare 100's of one page reports (one for each user) with your Pro account and subscribe yourself to those reports. Then create rules in your Office 365 account to forward these e-mails to the appropriate user. You can look at the subject of these e-mails to get the name of the report. This will be a bit cumbersome to manage, but it is almost for free. The problem here is the "one page" part. In the e-mail you will get a screenshot of the first report section only and a link to the actual report (for which your colleagues will need Pro accounts).
2) You can write an application implementing "app own data" scenario. This means that you will use your Pro account as "master account" to access the reports, but you will authenticate your users (and decide which reports they can see) in another way. This can be a web or a desktop application. Choose what is more appropriate for you.
Well you can create the embed code in Microsoft Power BI service and can distribute this link to different users. But there is one exception, if you have implemented row level security in your reports it will not be shown in the embed code.
If you want to show the reports with the row level security you need to use the Power BI embedding process. In this process you create your own dashboard in any language and then embed the reports from Power BI service into your own dashboard and in the dashboard users can see their reports. You can visit this link
https://www.loginworks.com/blogs/how-to-embed-power-bi-reports-into-your-application-using-power-bi-rest-apis/
Our company uses the Power BI Report Server. If your company already has a SQL Server Enterprise license or above, then you already have it, no additional costs. Works great, you can create SSRS and Power BI reports, deploy to your server.
PowerBI Report Server
https://powerbi.microsoft.com/en-us/report-server/
This uses SSRS to serve up web based PowerBI reports. SSRS is a great platform and is very flexible. You would also have support for the other SSRS reports (Paginated and Mobile Reports). I'm not sure what the licensing cost would be for your organization but I hear it's pretty steep.
My understanding is that you would need a Pro license for report writers but clients do not need a Pro license.
I agree with #Nick.McDermaid, there usually is a better solution out there but executives LOVE PowerBI ;)
If you have O365 and use Teams or SharePoint, you can use Power BI embedded (The EM Version is purchased via O365). This will allow you to host the power bi reports in Team, and allocate 'free' users to be able to read the reports. The Pro license would only be needed for report developers.
In this blog post it shows the differences in the SKU's and the number of equivalent Pro licenses to the cost of the service
https://jlsql.blog/2018/01/30/power-bi-embedded-sku-differences-and-cost-breakdowns/
So for the EM1 SKU, the cost per month (£470) is about the same as 63 Power BI Pro licenses, so if you had 100 Power BI users then it would save you the cost of the other 37. But, the SKU's have less Memory and CPU power so you do have to be careful and monitor the Embedded function.
I am working on an application that connects to numerous e-Mail services including Microsoft Exchange. Now that I've seen that there is an Outlook Web Access API, my simple question is:
Where do I get a sandbox (ideally free) to test my implementation on?
Do I really need to install all different Exchange versions, create accounts etc. with Outlook Web Access on top?
I don't have any Windows servers or licences. It's a web application running on Linux servers. Doesn't Microsoft have an Exchange sandbox or anything?
Many thanks in advance!
You might try an evaluation version from the Microsoft evalcenter here to test anything with and do an evaluation.
But just a short advise: There are multiple Exchange versions out there (Exchange 2010, 2013, 2016) with different Service Packs or Cumulative Updates. So checking only one version didn´t mean that your application will work with every exchange server. The best option I can think of is using IMAP on Exchange. This should be nearly identically on any Exchange Server while the Outlook Web Access (OWA) API might change from version to version.
However that depends on you solution and what it needs to perform.
Alternatively, you could get a trial O365 (Exchange Online) account and just run against whatever users or resources you have there. A 3-user license is maybe US$100 a year or thereabouts. Of course, this will mean you're running against the latest Exchange version, so the earlier ones would still need to be tested via eval versions.
As to the API, I'm really not sure about the OWA API, nor have I used IMAP. The "official" way to access Exchange is via Exchange Web Services or EWS. This comes in various flavors, can be used from Java, PHP, and other non-MS platforms, and provides a pretty robust and full-featured access into Exchange. My use of EWS has been limited to Windows/C#, so I can't vouch for the non-MS stuff, but it's been out for a while, and there is also a REST interface now--again no experience with that for me.
I want to run a script when an email is received on my exchange server. I really don't have a great direction on how to implement this. I've written my script in VB and tested it on outlook. I incorrectly assumed you can run a script from a rule in Exchange like you can in Outlook.
Any help would be greatly appreciated. Should I be using smtpreg.vbs or EWS or something completely different?
Exchange used to rely on event sinks for this kind of processing, but this is deprecated and not supported anymore in Exchange 2010; as the linked article says, the preferred way to handle events are now either developing a custom transport agent or using Exchange Web Services.
What you may be most interested in are EWS event notifications:
http://msdn.microsoft.com/en-us/library/aa579128(v=exchg.140).aspx
http://msdn.microsoft.com/en-us/library/bb204076(v=exchg.140).aspx
The last link provides some code samples, too.
As usual, since this is more of a developer-oriented question, StackOverflow is probably a better place to ask for detailed help.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Closed 8 years ago.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Improve this question
Currently all our files are stored on a Windows network drive and with 15 members of staff and 3 external workers, file control is beginning to become a bit of a nightmare. Even though we have a policy in place, people still seem to save file to their PCs, make changes, and copy them back without notifying anyone, send files via email instead of its location, and create folders/structures which only make sense to them.
Consequently on a recent project we found that 3 members of staff were using different versions of the same document and when those 3 people are editors and proof readers, you can probably imagine the problem that ensued in the end.
So we are looking for some nice simple file management apps. MS Sharepoint has been mentioned but we are looking to get away from being tied to a Windows machine, and the cost of setup etc. seems expensive particularly for a non-profit company. Also it seems Sharepoint may be a little over-the-top for our needs.
All we need is something that can fulfill the following:
can be used to store and control files
allow different user access
provide basic versioning
hopefully accessible through a web-browser so our remote workers can access it
We are not keen on SAAS solutions because of the nature of our confidentiality and also because we use these files all day everyday and the internet connection does go down from time to time. We want to be able to install in-house.
Ideally the solution will be FOSS, although we will consider buying software if it meets our needs.
You can try Alfresco:
Alfresco is the Open Source
Alternative for Enterprise Content
Management (ECM) led by John Newton,
founder of Documentum, and John
Powell, former COO of Business
Objects, and is backed by Accel
Partners, Mayfield Fund and SAP
Ventures.
Here has a good howto install it on linux.
The first question you probably need to ask is why the existing Windows file shares aren't working, and people are still saving files to their own computers.
For example, if they're often working outside of the office and can't access the file shares or they need to maintain a working copy, these are problems that can be fixed with SharePoint or other version control/file management software.
However, if they're just not following policy, then it's not going to matter what software you put in its place. Figuring out what problems the users have is going to help you choose the right solution.
Not sure this is the best place for such a question (its a discussio with no write/wrong answer) but anyway
Google apps for business?
http://www.google.com/apps/intl/en/business/index.html
Totally easy, low TOC (OSS is not free in a time sense).
You can share docs (read/write or read only) with external people or just do the old fashioned copy/paste the detail into OpenOffice/Word/iLife whatever and send a copy to them
Wouldn't something like a source control system be useful? SVN for example? admittedly binary files are a problem here, but if you're using a basic format you could convert to rtf or the new document standards used by Office 2007\OpenOffice.
It's worth noting that SharePoint and other variants are used widely for a reason; they do what you need.
Are you trying to avoid Windows Server completely, or just avoid buying Microsoft SharePoint Server?
If you are willing to purchase a Windows Server license you will get a basic version of SharePoint Server called SharePoint Services as part of the package. SharPoint Services allows you to have a powerful document management and collaboration system without having to buy an additional software package. It does include a version control system and you can integrate it with other applications. You can find more information here: Windows SharePoint Services 2.0 Overview.
Another MS provided solution that can handle file management and version control is Microsoft Groove. You can find more information on it here: Microsoft Groove. A great feature of Groove is that it can act as a front-end for Sharepoint (and most likely SharePoint Services) to allow users to more easily interact with the file storage mechanism.
A third option but will be less powerful would be to use your existing network file shares (through Windows or Samba), map the shares to local drives and/or reconfigure their My Documents to point to the network, and turn on Offline Storage. This will allow the users to interact with their documents as if they were local files even when they are offline. There will be a few small issues that you will experience with this route but it would break you from having to use a pure Microsoft solution.
In answer to some of the above questions.
The main reason its not working is because. One person will open a document from the shared drive and save a copy to their pc, which they work on. The changes they make are then not on the shared drive, when they copy it back, which everyone does the changes they have made overwrite any anyone else has done, they also dont inform anyone so if someone is working from that document they are now working on an old document. It is a case of getting users into a better frame of mind! But we feel software may help that, plus our external workers do not have access to the internal drive at present.
We have a number of servers, only one is windows and so we want to get away from using that windows server and have all linux servers for ease of management. Any MS product will require we run a dedicated MS machine!!
Local drives mapped is not really a good option as many people work out of the office and so wont be on the network to contribute, plus the file structure would probably not allow it.
It does seem that a MS solution might be the only one, i was just hoping there were some good alternatives available which were also a little simpler.
thnkx
A standard sharepoint document library, with versioning turned on, and checkin/checkout required, would meet your needs. Like previously posted, WSS comes free with Windows Server.