Around 2008 I was doing contract work for a large manufacturing company. I had extremely limited resources to work with (no dedicated DB server, old IIS server that couldn’t run asp.net, etc). One of the projects was an internal website written in ASP VBScript. Over the years they wanted more and more functionality tacked on. Now it is an internal website that helps them manage shop floor workers/machines. Each machine has a related status log (kind of like a blog but much more specific to each task at hand). There are also pages on the site that translate all of the information into things managers like to see (eg. a visual javascript based map made that shows machine status). A lot of the site is made in straight asynchronous Javascript. The backend is ASP/VBScript, simple XML files for the website’s structure, and (sad to say) MS Access database files to store status log information (one file per machine with multiple tables in each file, as well as specific db files for things like holding a recent status record from all logs, or the visual map location). When adding a new machine to the site they copy/paste a mdb file and a xml file (modifying filenames/xml tags as needed). Certainly not ideal, but the code is solid and functions for hundreds of users daily.
The javascript side of the site communicates with the server through a single ASP based “web service” I designed (just an asp script that takes “commands” and passes back and forth data from database files on the server, formats it, and sends it to the client). So the good thing is that the old ASP site itself doesn’t have a huge amount of function/logic to it, at least considering how complex the entire system has become over the years.
All that said, my client is looking to transition the site to be based in SharePoint (basically run on their big SharePoint company intranet website). I have a lot of experience with C# winforms programming over the years, but no specific Sharepoint programming and no ASP.NET programming of note.
I am looking for suggestions based on your experience with SharePoint/ASP.NET. What sub-tools/technologies in SP might be a good fit to write the site on? I have just started to skim what options I have. There looks to be many different sub-tools/technologies I can leverage in SP to transition/rewrite the website. I will assume they are running on the most recent version of SharePoint, but they could be one version behind. They have been using SP for many years now as their intranet site (multinational company), so I assume they have every add-on to SP available. I do know they have a big server farm setup for SP.
Goals: – I’d like to leverage the javascript front-end code because I could see it being mostly fine as-is considering it communicates with the server through my custom language. I’m assuming at this point I’d just need to translate my asp script to asp.net and design a new backend database structure. I’ll have to figure out what to ask resource wise from their global IT department. – I’d like to translate the way data is handled of course. Probably leveraging an MS SQL server. At this point I don’t know how and what SP offers related to database access. With a true database backend I could get rid of the xml website structure and simplify some of the frontend/backend. – They want the new site to be easily duplicatable/clonable for different departments. They also would want a web interface for adding/deleting/modifying “machines” in a given log system. As I don’t yet know what SP is capable of, I am looking for those experience based suggestions here. I am not sure if I would want to push multiple departments into a single database structure or not. That adds data complexity, performance considerations, and whatever else to the equation. Maybe there is a way for SP to clone/edit/delete table structures programmatically? Can I simply run an asp.net website on the sharepoint server and have it somehow work through their company SP intranet site, or does it have to be a SP “webpart”? – Do you have any favorite Sharepoint development books? Going to pick up one or two. Kindle or physical, doesn’t matter.
I’m probably going to take a week or two of design time to write up a quote. The site is currently around 80 ASP files, 15 javascript files, and a number of support files here and there. So pretty decent sized for a single developer.
I am not looking for really hard specifics here, just suggestions on Sharepoint/ASP.NET development that might be best practices or whatever given my description of the existing website. There seem to be 10 ways to do any one task these days with Microsoft tools. Probably my biggest difficulty moving forward will be working with their IT to secure resources on their servers to make it happen, haha.
Thanks!