Recently, I was working on a project which used SQLCommands and I need to import a few SQL tables to start using as models. The tables were pretty large so I didn’t want to type them in manually. After a bit of searching, I found something on Stack Overflow that helped me out. Link
The code is pretty simple. You execute it against your table and it’ll output a C# class with all properties based on the table’s columns:
Continue reading “Quick Way to Create C# Models from SQL Tables”
A couple weeks ago, I attended a webinar called “The Future of SharePoint and Office 365,” sponsored by Emgage. The panelists included Collab365.community’s manager Nick Brattoli, developer and educator Andrew Connell, and Content Panda co-founder Heather Newman. In the hour-long discussion, the panelists shared their thoughts about the current state of SharePoint, made predictions about its future, and answered audience questions.
Continue reading “Webinar Recap: “The Future of SharePoint and Office 365””
Most of Angular is different than Angular 1.x, but one of the idioms that stayed the same was the use of class names to identify form fields that had validation errors (e.g. ng-invalid, ng-dirty, ng-touched etc). By checking for different combinations of these classes, you can tell which fields are invalid, have been modified (“ng-dirty”), and had focus at some point (“ng-touched”). However, this had a tendency to lead to some rather verbose and messy view code just to show/hide a validation message:
Continue reading “Angular Form Errors – A Declarative Solution”
Many years ago we worked on a project that would allow the client to perform inspections digitally on the various restaurants in their franchise. One of the goals of these inspections was to make sure the restaurants were following the client’s procedures and policies. These procedures and policies are constantly being reviewed and updated, so one of the main requirements of this inspection project was to allow the client to update the inspection on the fly without requiring development updates each time. In other words, it needed to be reasonably configurable by the client. We ultimately created a dynamic form that would be constructed in real-time based on data provided by the client. The idea was that as the client updated their procedures and policies, they would add/remove items from the form to keep it up-to-date.
Continue reading “Data Storage: SharePoint v. SQL”
I had an issue recently with a pretty standard form in Angular 2. The form had some required fields, one of which was a drop down / select field that wouldn’t populate with options until the user had made some selections earlier in the form. The submit button for the form was disabled until all required fields were filled in.
The issue arose when the client started testing the form in their environment. Despite completely filling out the form, the submit button would stay disabled. Obviously something was wrong.
Continue reading “Dynamically Populating Drop Downs in Different Browsers”
Last week, I tuned in to Collab365’s Live Show, where the hosts and two special guests discussed Office 365 groups.
I’ve outlined some of the key points I took away from the show below:
- What is Office 365 Groups?
Office 365’s blog defines Groups as a “cross-application membership service” that allows people “to move naturally from one collaboration tool to another.” Essentially, it integrates the best parts of all of Microsoft’s other collaboration tools, such as Exchange, Skype for Business, FileMaker, and Microsoft Teams, into one place. Groups gives you and your team members access to a SharePoint site, document library, planner, notebook, and distribution group.
Continue reading “Recap: Collab365 “Office 365 Groups””