|
| 1 | +--- |
| 2 | +title: Transformation |
| 3 | +ms.date: 01/26/2018 |
| 4 | +--- |
| 5 | +# Transformation |
| 6 | + |
| 7 | +## Summary |
| 8 | + |
| 9 | +Office 365 and SharePoint evolve continuously. As new capabilities are added, it might be necessary to update the existing configuration and customizations. Transforming your solutions can help you get more benefit out of using SharePoint and Office 365. |
| 10 | + |
| 11 | +## High-level guideline/general rules |
| 12 | + |
| 13 | +- Get a clear understanding of the model you are migrating to. It is possible, that transforming existing scenarios to new capabilities would yield bigger benefits than mapping existing artifacts to their new equivalents. |
| 14 | +- Carefully examine your existing requirements. It is possible, that implementing them in the new model will turn out to be more costly than the benefits they offer. |
| 15 | +- Before starting transformation, thoroughly assess your existing environment and solution and decide if everything is still relevant. |
| 16 | +- Don't forget to include end-user adoption as a part of the transformation process. Users are used to working in a certain way and might need to be re-educated to work just as efficiently with the new solution. |
| 17 | + |
| 18 | +## Transformation from |
| 19 | + |
| 20 | +### Farm solutions |
| 21 | + |
| 22 | +_**Applies to:** SharePoint Server_ |
| 23 | + |
| 24 | +Typically, farm solutions are packaged as SharePoint solution package (WSP) files that contain assemblies, other non-compiled components, and an XML manifest file. A farm administrator uses Windows PowerShell, the STSADM command-line tool, or the SharePoint Central Administration Web site to install solution packages to the server environment. After a solution package is installed, the farm administrator can activate the solution to a specific Web application (or multiple Web applications, if you use the full-trust model). |
| 25 | + |
| 26 | +#### Related resources |
| 27 | + |
| 28 | +##### Articles |
| 29 | + |
| 30 | +- [Advance SharePoint add-in model development](https://github.com/OfficeDev/TrainingContent/tree/master/O3658) |
| 31 | +- [Transform farm solutions to the SharePoint add-in model](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/transform-farm-solutions-to-the-sharepoint-app-model) |
| 32 | +- [Work with __REQUESTDIGEST](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/basics/working-with-requestdigest) |
| 33 | +- [Transformation guidance from farm solutions to add-in model training module](https://github.com/OfficeDev/TrainingContent/tree/master/SharePoint/AddIns/14%20Transformation%20guidance%20from%20farm%20solutions%20to%20add-in%20model) |
| 34 | +- [SharePoint Add-ins](https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/sharepoint-add-ins) |
| 35 | +- [SharePoint Add-in recipes](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/sharepoint-add-in-recipes) |
| 36 | + |
| 37 | +##### Videos |
| 38 | + |
| 39 | +- [Introduction to PnP Transformation Process](https://channel9.msdn.com/blogs/OfficeDevPnP/Introduction-to-PnP-Transformation-Process) |
| 40 | +- [PnP Webcast - Transforming customizations to SharePoint Online](https://www.youtube.com/watch?v=iB-kZ3LSZDM) |
| 41 | +- [Build client-side web parts with the SharePoint Framework](https://www.youtube.com/watch?v=loPY6LfxIvQ) |
| 42 | +- [PnP Webcast - Introduction to SharePoint Webhooks](https://www.youtube.com/watch?v=j3hWCAI9R20) |
| 43 | +- [PnP Add-In Transformation Training module 1: Introduction](https://channel9.msdn.com/blogs/OfficeDevPnP/PnP-Add-In-Transformation-Training-module-1-Introduction) |
| 44 | +- [PnP Add-in Transformation Training Module 10: Transformation guidance from farm solutions to add-in model](https://channel9.msdn.com/blogs/OfficeDevPnP/PnP-Add-in-Transformation-Training-Module-10-Transformation-Guideance-from-Farm-Solutions) |
| 45 | + |
| 46 | +##### Samples |
| 47 | + |
| 48 | +- [PnP-Transformation GitHub repository](https://github.com/SharePoint/PnP-Transformation) |
| 49 | +- [SharePoint Web Hooks Azure AD reference implementation](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List.AzureAD) |
| 50 | +- [SharePoint Web Hooks reference implementation](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List) |
| 51 | +- [Generic React app for modern web development](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/react-generic-app) |
| 52 | +- [A Series of Visual Studio Solutions to Accompany the MSDN Tutorial Series about Provider-hosted Add-ins](https://github.com/OfficeDev/SharePoint_Provider-hosted_Add-ins_Tutorials) |
| 53 | + |
| 54 | +##### Tools |
| 55 | + |
| 56 | +- [PowerShell to enable site collection creation with CSOM](https://github.com/SharePoint/PnP-Tools/tree/master/Scripts/SharePoint.SiteColProvisioning.Configuration) |
| 57 | + |
| 58 | +##### Solutions |
| 59 | + |
| 60 | +- [PnP Partner Pack v. 2.0 (January 2018)](https://github.com/SharePoint/PnP-Partner-Pack) |
| 61 | + |
| 62 | +### Script- and Content editor web parts |
| 63 | + |
| 64 | +_**Applies to:** Office 365 and SharePoint Server_ |
| 65 | + |
| 66 | +Script- and Content Editor Web Parts are used to build SharePoint customizations primarily by citizen developers. With nothing more than site owner permissions, citizen developers can build compelling SharePoint customizations that add business value. Whenever the customization needs to be updated, users with the necessary permissions can apply updates to the solution's script files and the changes are immediately visible to all users. |
| 67 | + |
| 68 | +Script- and Content Editor Web Part solutions make it hard for IT organizations to keep track of what customizations are being used and where they are being used. Additionally, organizations can't tell which external scripts are being used in their intranet and have access to their data. |
| 69 | + |
| 70 | +#### Related resources |
| 71 | + |
| 72 | +##### Articles |
| 73 | + |
| 74 | +- [Migrate existing Script Editor Web Part customizations to the SharePoint Framework](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/migrate-script-editor-web-part-customizations) |
| 75 | +- [Migrate jQuery and DataTables solution built using Script Editor Web Part to SharePoint Framework](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/migrate-jquery-datatables-script-to-spfx) |
| 76 | + |
| 77 | +##### Videos |
| 78 | + |
| 79 | +- [Build client-side web parts with the SharePoint Framework](https://www.youtube.com/watch?v=loPY6LfxIvQ) |
| 80 | +- [PnP Webcast - Converting existing JS apps to SharePoint Framework](https://www.youtube.com/watch?v=45FMWyv5P5A) |
| 81 | +- [PnP Webcast – Reuse your existing JavaScript libraries with SharePoint Framework](https://www.youtube.com/watch?v=ctfLsesx-ZI) |
| 82 | + |
| 83 | +##### Samples |
| 84 | + |
| 85 | +- [SharePoint Framework client-side web part samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-webparts) |
| 86 | +- [Generic React app for modern web development](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/react-generic-app) |
| 87 | + |
| 88 | +##### Tools |
| 89 | + |
| 90 | +- [PnPJS](https://github.com/SharePoint/PnP-JS-Core) |
| 91 | + |
| 92 | +### Sandboxed solutions |
| 93 | + |
| 94 | +_**Applies to:** Office 365 and SharePoint Server_ |
| 95 | + |
| 96 | +Code-based sandbox solutions [were deprecated](https://blogs.msdn.microsoft.com/sharepointdev/2014/01/14/deprecation-of-custom-code-in-sandboxed-solutions/) back in 2014 and SharePoint online has started the process to completely remove this capability. Code-based sandbox solutions are also deprecated in SharePoint 2013 and in SharePoint 2016. |
| 97 | + |
| 98 | +When you deactivate your existing sandbox solution from your sites, any assets or files deployed using declarative options will not be removed however, the features in the sandbox solution will automatically be deactivated and the event receiver will be removed. |
| 99 | + |
| 100 | +#### Related resources |
| 101 | + |
| 102 | +##### Articles |
| 103 | + |
| 104 | +- [Sandbox solution transformation guidance](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/sandbox-solution-transformation-guidance) |
| 105 | +- [Remove the assembly reference from your Sandbox solution created in Visual Studio](https://support.microsoft.com/en-us/help/3183084/remove-the-assembly-reference-from-your-sandbox-solution-created-in-vi) |
| 106 | + |
| 107 | +##### Videos |
| 108 | + |
| 109 | +- [SharePoint Sandbox Solution Scanner](https://www.youtube.com/watch?v=pK4p2mGYXpU) |
| 110 | +- [PnP Webcast - Introduction to SharePoint Webhooks](https://www.youtube.com/watch?v=j3hWCAI9R20) |
| 111 | + |
| 112 | +##### Samples |
| 113 | + |
| 114 | +- [SharePoint Web Hooks Azure AD reference implementation](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List.AzureAD) |
| 115 | +- [SharePoint Web Hooks reference implementation](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/WebHooks.List) |
| 116 | +- [Generic React app for modern web development](https://github.com/SharePoint/sp-dev-samples/tree/master/Samples/react-generic-app) |
| 117 | + |
| 118 | +##### Tools |
| 119 | + |
| 120 | +- [Sandbox solutions inventory script for SharePoint Online](https://github.com/SharePoint/PnP-Tools/tree/master/Scripts/SharePoint.Sandbox.ListSolutionsFromTenant) |
| 121 | +- [SharePoint Sandbox Solution scanner](https://github.com/SharePoint/PnP-Tools/tree/master/Solutions/SharePoint.SandBoxTool) |
| 122 | + |
| 123 | +### JSLink |
| 124 | + |
| 125 | +_**Applies to:** Office 365 and SharePoint Server_ |
| 126 | + |
| 127 | +Client-side rendering or JSLink is a concept introduced with SharePoint 2013. With the help of this concept, you can customize the look and feel of SharePoint Out of the box VIEW/ADD/EDIT FORM. |
| 128 | + |
| 129 | +JSLink is a JavaScript file which will override the default view of your list with the help of logically defined in your custom JSLink file. You can include the JSLink JavaScript file under the Miscellaneous section of your list view web part. |
| 130 | + |
| 131 | +JSLink works only with the classic SharePoint experience and cannot be reused with the modern SharePoint UI. |
| 132 | + |
| 133 | +#### Related resources |
| 134 | + |
| 135 | +##### Articles |
| 136 | + |
| 137 | +- [Migrating JSLink customizations to SharePoint Framework Field Customizers](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/guidance/migrate-jslink-to-spfx-extensions) |
| 138 | +- [Migrating from JSLink to SharePoint Framework Extensions (tutorial)](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/guidance/migrate-from-jslink-to-spfx-extensions) |
| 139 | + |
| 140 | +##### Samples |
| 141 | + |
| 142 | +- [SharePoint Framework Extensions samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-extensions) |
| 143 | +- [SharePoint Column Formatting Samples](https://github.com/SharePoint/sp-dev-column-formatting) |
| 144 | + |
| 145 | +### Custom actions |
| 146 | + |
| 147 | +_**Applies to:** Office 365 and SharePoint Server_ |
| 148 | + |
| 149 | +#### Related resources |
| 150 | + |
| 151 | +##### Articles |
| 152 | + |
| 153 | +- [Migrating from Edit Control Block (ECB) menu item to SharePoint Framework Extensions](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/guidance/migrate-from-ecb-to-spfx-extensions) |
| 154 | +- [Migrating user custom actions and ECB menu items to SharePoint Framework Extensions](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/guidance/migrate-user-customactions-to-spfx-extensions) |
| 155 | +- [Migrating from UserCustomAction to SharePoint Framework Extensions (tutorial)](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/guidance/migrate-from-usercustomactions-to-spfx-extensions) |
| 156 | + |
| 157 | +##### Videos |
| 158 | + |
| 159 | +- [PnP Webcast - Migrating to SharePoint Framework Extensions](https://www.youtube.com/watch?v=bbspCee-9Ng) |
| 160 | + |
| 161 | +##### Samples |
| 162 | + |
| 163 | +- [SharePoint Framework Extensions samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-extensions) |
| 164 | + |
| 165 | +### Custom forms |
| 166 | + |
| 167 | +_**Applies to:** Office 365 and SharePoint Server_ |
| 168 | + |
| 169 | +#### Related resources |
| 170 | + |
| 171 | +##### Articles |
| 172 | + |
| 173 | +- [Sandbox solution transformation guidance - InfoPath](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/sandbox-solution-transformation-guidance-infopath) |
| 174 | + |
| 175 | +##### Samples |
| 176 | + |
| 177 | +- [SharePoint Framework client-side web part samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-webparts) |
0 commit comments