Izertis

Por qué unificar Dynamics ERP con Office 365

Microsoft Dynamics ERP es parte de una solución de negocios de Microsoft, que ayuda a las empresas en crecimiento a administrar sus finanzas, su cadena de suministro y operaciones. La ejecución de su aplicación empresarial en la nube te ayuda a concentrarte menos en la infraestructura y más en las necesidades estratégicas de tu negocio.

Qué ventajas aporta a tu empresa

Una solución de negocio de Microsoft que integra Microsoft Dynamics y Office 365 permite facilitar tus procesos ofreciéndote una serie de ventajas que te exponemos a continuación:

  • Unir tu correo, calendario y archivos con tu información, reportes y el software de gestión empresarial.
  • Compartir el panorama general y acceder con un solo clic a los detalles.
  • Mantener tu productividad de forma segura. Puedes acceder en cualquier momento y desde cualquier lugar con una simple conexión de Internet.
  • Simplificar tu día a día con una contraseña y mejorar tu experiencia de usuario.
  • Flexibilidad y obtención de datos en tiempo real. Además, Microsoft Dynamics y Office 365 te brindan la oportunidad de visualizar e interactuar con datos en tiempo real desde prácticamente cualquier lugar, ayudando a tu equipo a compartir, conectarse y colaborar independientemente de dónde necesites trabajar.

Conclusión

Microsoft Dynamics ERP en su versión Cloud tiene la flexibilidad para ayudar a tu negocio a crecer eficientemente. Mediante el uso de la nube, puedes controlar los costes de software y hardware, escalar a medida que tus necesidades cambien y de esta manera conseguir que tus gastos mensuales sean más predecibles. Comienza con lo que necesitas hoy mismo y comprueba cómo tu negocio va creciendo.

En Izertis, contamos con consultores que pueden asesorarte en soluciones empresariales fluidas, flexibles, rápidas de implementar y fáciles de utilizar, que se adapten a tus necesidades, te ahorren tiempo simplificando los procesos, te ayuden a crecer, a ser más productivo y eficaz para conseguir un objetivo fundamental: ganar en competitividad, posicionando tu negocio a la vanguardia de tu sector.

Whitepaper
Reinventa la productividad con Microsoft Dynamics 365
Descarga gratuita
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> link  [in template "20099#20135#190900" at line 41, column 47]

----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if !currentUrl?contains(link + "/") ...  [in template "20099#20135#190900" at line 41, column 21]
----
1<#if entries?has_content> 
2 
3    <#assign journalArticleExtLocalService = serviceLocator.findService("com.izertis.internet.journal.ext.service.service.JournalArticleExtLocalService")> 
4    <#assign currentUrl = themeDisplay.getURLCurrent() + "/" /> 
5    <!-- Configuración hardcoded --> 
6    <#assign delta = 4> 
7 
8    <div class="row related-content"> 
9        <div class="col-xxl-11 px-5 pl-xxl-100px pl-xl-5 py-5"> 
10            <div class="title"><@liferay.language key="related-contents-title" /></div> 
11            <div class="row"> 
12            <#assign cont = 0> 
13            <#list entries as curEntry> 
14                 
15                <#assign renderer = curEntry.getAssetRenderer()> 
16                <#assign className = renderer.getClassName()> 
17 
18                <#if className == "com.liferay.journal.model.JournalArticle"> 
19                    <#assign journalArticle = renderer.getArticle()> 
20                    <#assign document = saxReaderUtil.read(journalArticle.getContent())> 
21                    <#assign rootElement = document.getRootElement()> 
22                    <#assign defaultLanguageId = parseXml ("@default-locale", rootElement)> 
23                    <#attempt> 
24                        <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='miniatureimage']")> 
25                        <#assign img = xPathSelector.selectSingleNode(rootElement).getStringValue()> 
26                        <#if isJson(img)> 
27                            <#assign imgJson = jsonFactoryUtil.createJSONObject(img)> 
28                            <#assign imgUrl = "/documents/" + imgJson.groupId + "/" + imgJson.uuid > 
29                        <#else> 
30                            <#assign imgUrl = "/o/portal-izertis-theme/images/publications/" + journalArticle.getArticleId()[journalArticle.getArticleId()?length-1] + ".jpg"> 
31                        </#if> 
32                    <#recover> 
33                        <#assign imgUrl = "/o/portal-izertis-theme/images/publications/" + journalArticle.getArticleId()[journalArticle.getArticleId()?length-1] + ".jpg"> 
34                    </#attempt> 
35 
36                    <#assign title = getField("title", locale, defaultLanguageId, rootElement)!> 
37                    <#attempt> 
38                        <#assign link = "/-/" + journalArticleExtLocalService.getFriendlyUrl(journalArticle, themeDisplay.getLocale()) /> 
39                    <#recover> 
40                    </#attempt> 
41                    <#if !currentUrl?contains(link + "/") && (cont < delta)> 
42                        <#if title != ""> 
43                            <div class="col-sm-6 col-lg-3 pr-5 pb-5 pb-lg-0"> 
44                                <div class="img-cont"> 
45                                    <img alt="" src="${imgUrl}" /> 
46                                </div> 
47                                <#if title != ""> 
48                                    <div class="info"><a href="${link}">${title}</a></div> 
49                                </#if> 
50                            </div> 
51                            <#assign cont = cont + 1 /> 
52                        </#if> 
53                    </#if> 
54                </#if> 
55            </#list> 
56            </div> 
57         
58        </div> 
59    </div> 
60</#if> 
61 
62<#function getField field languageId defaultLanguageId xml> 
63    <#local defaultSelector = "//dynamic-content[@language-id='" + defaultLanguageId + "' and ancestor-or-self::*[@name='" + field + "']]"> 
64    <#local localeSelector = "//dynamic-content[@language-id='" + languageId + "' and parent::*[@name='" + field + "']]"> 
65 
66    <#local selector = saxReaderUtil.createXPath(localeSelector)> 
67    <#local value = selector.selectSingleNode(xml)!> 
68 
69    <#if value?has_content> 
70        <#return value.getText()> 
71    </#if> 
72 
73    <#local selector = saxReaderUtil.createXPath(defaultSelector)> 
74    <#local value = selector.selectSingleNode(xml)!> 
75 
76    <#if value?has_content> 
77        <#return value.getText()> 
78    </#if> 
79 
80    <#return ""> 
81</#function> 
82 
83<#function parseXml xpath xml> 
84    <#local selector = saxReaderUtil.createXPath(xpath)> 
85    <#local result = selector.selectSingleNode(xml)!> 
86 
87    <#if result?has_content> 
88        <#return result.getStringValue()> 
89    </#if> 
90 
91    <#return ""> 
92</#function> 
93 
94<#function isJson json> 
95    <#local value = json?trim> 
96    <#return value?has_content && value?starts_with("{") && value?ends_with("}")> 
97</#function>