MVC compatible Grid, which will have Excel functionality - model-view-controller

In our project we need to implement Excel-like grid for web, which will look and fell like Excel cells(not fully, but as much as it possible for web).
The most important functionality, which we need, is ability to input formulas in cells (and they could be like "=A1+C4")
Aspose.Cells looks good, but it is not compatible with MVC at all. Only with ASP.Net. And ASP.Net is not a good way to go, as large part of our system is already working and is based on MVC.
Any help\experience will be appreciated.
Thank You in advance!

You can get a long way with jQuery (jsGrid) but if you want your users to use excel why not just let them?
Excel supports Restful data
Some reading:
How can Excel 2007 / 2010 consume a REST web service?
Book list - getting book details from amazon using Excel VBA barcode lookups
http://libkod.info/officexml-CHP-9-SECT-5.shtml
http://msdn.microsoft.com/en-us/data/aa937697.aspx
http://blog.tonysneed.com/2010/04/13/wcf-data-services-versus-wcf-soap-services/
http://msdn.microsoft.com/en-us/library/bb907578.aspx
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=7609

Related

Easiest language/framework to use for web app that follows MVC for someone who has experience with Java/JavaFX

I am trying to create a web app that allows the user to browse a noSQL (Preferably MongoDB) database and perform some queries using a graphical interface. All the queries are written in the code and the user only needs to click links and/or enter strings (mostly to search for matches to be displayed in properly formatted tables). The app follows MVC model.
Up until now I used to write similar desktop apps using Java and JavaFX. I have no experience with other languages or frameworks (Aside from C and SDL), neither have I ever deployed anything on a server, and the assignment should be completed within 6 weeks (Three other students are working with me). And I have the three following questions:
Which language/framework is easiest to learn (considering I/we know Java/JavaFX)?
The answer to that would most probably be JavaScript*, which takes me to the next question:Is there any (practical) way that I would make it possible to write the app without having to learn HTML and CSS?
The third and last question, in case I write the View class in JS or Angular, can I write the Controller and Modal with Java (If we disregard complicated workarounds)? And do I deploy all three MVC classes/packages on the same server?
*I believe some would suggest we use GWT or Vaadin, and in this case I wonder if these frameworks have any quirks or limitations that would make it difficult for us as students to work with, be it when it comes to deployment (which is totally new for us) or the writing of the code itself.
Thanks a lot in advance.
Since nobody answered I am posting the best answer I could find so if anyone googles this subject could read it. At last we went with Java for backend running on Tomcat server and JS for front end. It turns out that HTML is very simple and JS is pretty similar to C/Java in syntax.

Sitecore 7.2 | Drawbacks of using MVC and Web Forms in the same site built with MVC

Question : Downside of using Web forms and MVC in same sitecore instance.
Current Situation : We have a Sitecore 7.2 instance developed using MVC and Glass Mapper. We want to reuse existing component which is already developed in Web Forms using the same sitecore version that we are currently using. What we have done so far: To achieve this we did a small POC and were able to achieve the same. We referred below link at Git to achieve this POC We found few blogs where people have done this but always say that it may not work all the time (and not highlighted which scenarios they fail). What are the drawbacks or possible difficulties that we could face doing this ?.It will be helpful if you can highlight as For example :Workflow does not work or personalization does not work etc. Thanks
I am currently running a Sitecore 7.2 instance with both WebForms and MVC (we actually went the other way- our old code is Webform and with a recent redeisgn we moved to MVC) and its doable, but kind of messy.
The biggest issues we've run into have been when we want to display webform and mvc content on the same page, or have the two code bases communicate in any way. Attempting to have renderings calling both webform and mvc code on the same page was disaster. Likewise trying to have webform-only pages communicate with mvc-only pages (eg. building out submenues, getting field values, etc).
In a way, what ended up happening with us was we had essentially two sites - the webforms and mvc versions - and the two never really merged well together. Our project plan was to move off of Webforms to full MVC, so we accepted this as a reality. I'm not sure how well a permanent mvc-webform crossover solution would work, to be honest.
We had some good luck using the following resources: https://www.packtpub.com/books/content/mixing-aspnet-webforms-and-aspnet-mvc
http://www.sitecore.net/Learn/Blogs/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/06/Using-Web-Forms-and-MVC-in-a-Single-Solution-with-the-Sitecore-ASPNET-CMS.aspx
It's been messy for us, lots of time keeping pages and code apart, and we are planning on cutting out webforms completely in the near future and going full-mvc. But running both is very doable.

How to create a web application?

I have a question. I need to create a web application, which should work and look like a normal desktop app, so with windows, dialogs etc. without refreshing every time the site, but I am not sure what should I use for that. I have only a little experience with php (one rather simple site).
I suppose I need ajax on the client site to do that (maybe jQuery), but what should I use on the server site and how can I load e.g. whole page without refreshing site? Should I use PHP or python or something else? Maybe with some frameworks?
Thanks for any advice.
If you want to have rich client side interaction, consider using a MVC /MVVM js framework as:
backbone.js;
ember.js;
knockout.js;
angular.js.
Everyone has pros and cons, here you can find a smart comparison resource.
Once you download the bootstrap stuff [css, js, images], no page reloads will issue, and the app will flow like a desktop one.
All data is fetched from and persisted to the server: further request are made in JSON / XML format, in a RESTful fashion possibly.
You can setup such webservice in many many ways, among the others:
Sinatra (Ruby);
Symfony (PHP);
Django (python).
As I am more familiar with MS technologies I would use ASP.NET MVC, and then on the client side you can use Telerik controls which are good and free. jQuery is also a great option for the client side development. For developing ASP.NET MVC you can use the Visual Studio Express which is free as well.
However, I do not know your specifications. Maybe it would not be good enough for you. Another option that you have is using WPF (MS again), with which you can really develop very rich behavior web applications.

Getting numbers from a web page, performing calculations, pasting them into excel sheet

I am working on a business application that will do financial computations based upon publicly traded companies' financial statements. Specifically, I would like to use data from pages such as this. Such as the number for the operating income in the first column.
My current plan is to parse the page as an htm file(if I can get it). however this is my first time attempting to write an application that interacts with the web, so I am uncertain if this is the best way to proceed. I am currently expecting to implement this library. to do the parsing.
Once I have all the relevant numbers, and have done the calculations, I would like to place the results into an Excel spreadsheet. This is also something I do not know how to do.
Any advice or responses detailing how to implement this plan or how to form a better one are greatly appreciated.
For financial data regarding publicly traded companies, you probably want to use a web service, rather than parsing HTML. This is one example of such a webservice (though I'm not vouching for its price or reliability - I've never used it). You could create a simple console app in Visual Studio (a VSTO solution is probably better, I just don't have much experience with it) that retrieves data via the web service, and then pastes and formats it in Excel via Excel Interop. There's many posts about Excel Interop here on SO, as well as all over the web.
What you're trying to do sounds so common that I wonder if there's an existing report suite available somewhere.

Recommendation of a JavaScript (GUI) framework to act as a frontend to a website's backend?

I'd like to tap your experience regarding the use/deployment of a JavaScript powered framework to implement a GUI frontend for different backend tasks.
The framework would have to provide a managable way of displaying arbitrary data fetched from a database (data can be provided in every thinkable way JSON, XML etc.) and allow the manipulation of that data by means of a clean and RESTful API. Prebuilt widgets (tables/lists/dashboard) and UI (drag'n'drop/sorting) would be nice to have but aren't mandatory.
The requirements are:
Open Source (obligatory)
clean and RESTful API to fetch, display and manipulate data
Ability to extend the functionality thru plugins
Standards-compliant (IE does not have to be supported)
Thorough documentation and/or helpful community
I've figured that jQuery's UI framework comes very close to the ideal, though it lacks a decent support of general structures to master a full-fledged application.
I'm interested of what you guys would recommend.
Thanks in advance.
After years of using several of the available frameworks I now use Yahoo's YUI3 (3 - not the older 2) if I can - for "serious" apps. For HTML page enhancements I'm indifferent and may sometimes prefer jQuery.
http://developer.yahoo.com/yui/3/ (BSD license)
What I like about YUI3 are the very "deep" concepts behind it for serious "enterprise level" software development. Regardless of what framework one uses, EVERYONE seriously developing in JS should have viewed (and understood!) the videos on Yahoo Developer Theater, especially the presentations by Douglas Crockford.
http://developer.yahoo.com/yui/theater/

Resources