• No se han encontrado resultados

Guía de ISVforce. Version 29.0: Winter 14

N/A
N/A
Protected

Academic year: 2021

Share "Guía de ISVforce. Version 29.0: Winter 14"

Copied!
227
0
0

Texto completo

(1)

Version 29.0: Winter ’14

(2)
(3)

Contenido

Capítulo 1: Introducción...1

Funciones en el ciclo de vida de la aplicación...2

Capítulo 2: Inicio rápido de ISVforce...3

Tutorial n.º 1: Inscripción...4

Paso 1: Inscribirse en el programa de socios...4

Paso 2: Generar entornos de desarrollo y prueba...5

Paso 3: Obtener una organización de negocio...5

Paso 4: Editar la lista del publicador...6

Resumen de inscripción...7

Tutorial n.º 2: Desarrollo de su aplicación...7

Paso 1: Crear una aplicación...7

Paso 2: Empaquetar la aplicación...9

Paso 3: Asignar un espacio de nombres...9

Paso 4: Cargar una versión beta...9

Paso 5: Instalar y probar la versión beta...10

Resumen de la tarea de desarrollo...11

Tutorial n.º 3: Publicación y licencias...11

Paso 1: Cargar en AppExchange...11

Paso 2: Crear la lista de aplicaciones...12

Paso 3: Completar la lista...12

Paso 4: Instalar la LMA...13

Paso 5: Licencias y gestión de aplicaciones...14

Resumen de publicación y licencias...14

Tutorial n.º 4: Actualización de la aplicación...14

Paso 1: Crear una organización de parche...15

Paso 2: Desarrollar un parche...16

Paso 3: Cargar el parche...16

Paso 4: Instalar o enviar un parche...17

Resumen de la actualización de la aplicación...17

Capítulo 3: Arquitectura y desarrollo de aplicaciones...19

Concepto de paquetes gestionados y no gestionados...20

Planificación de la edición de paquetes gestionados...20

Componentes disponibles...21

Modificación de componentes y atributos después de la instalación...25

Los componentes se agregan automáticamente a paquetes...31

Comportamiento especial de los componentes en paquetes...33

Componentes protegidos...41

Consideraciones arquitectónicas para Group Edition y Professional Edition...42

Funciones disponibles en Group Edition y Professional Edition...43

Límites para Group Edition y Professional Edition...43

Control de acceso en Group Edition y Professional Edition...44 Contenido

(4)

Uso de Apex en Group Edition y Professional Edition...44

Acceso a API en Group Edition y Professional Edition...44

Acceso a la API de REST en Group Edition y Professional Edition...45

Diseño de la aplicación para que sea compatible con varias ediciones...46

Compatibilidad con varias ediciones mediante un paquete de ampliación...46

Compatibilidad con varias ediciones mediante Apex dinámico...47

Escenarios de diseño de ejemplo para Group Edition y Professional Edition...48

Concepto de dependencias...49

Creación de aplicaciones empaquetadas con Chatter ...50

Aspecto de Salesforce coincidente...51

Desarrollo de la documentación de las aplicaciones...51

Creación de configuración de perfil personalizado...52

Acerca de los conjuntos de permisos y la configuración de perfil...52

Descripción general de las aplicaciones conectadas...55

Creación de una aplicación conectada...55

Modificación, empaquetado o eliminación de una aplicación conectada...58

Instalación de una aplicación conectada...59

Visualización de detalles de la aplicación conectada ...59

Gestión de una aplicación conectada...60

Modificación de una aplicación conectada...60

Monitoreo del uso de una aplicación conectada...62

Desinstalación de una aplicación conectada...63

Acerca del WSDL de socio...63

Trabajo con servicios externos...63

Aprovisionamiento de servicios externos...64

Protección de la propiedad intelectual...64

Núcleo de entorno...65

Configuración del Núcleo de entorno...66

Configuración de Mi dominio para el Núcleo de entorno...68

Mejores prácticas del Núcleo de entorno...69

Conexión de una organización al Núcleo de entorno...69

Consulta de los detalles de un miembro del Núcleo de entorno...70

Modificación de los detalles de un miembro del Núcleo de entorno...72

Creación de una organización nueva desde el Núcleo de entorno...73

Activación del inicio de sesión único en el Núcleo de entorno...73

Desactivación del inicio de sesión único en el Núcleo de entorno...74

Asignación de usuarios para inicio de sesión único en el Núcleo de entorno...74

Capítulo 4: Empaquetado y pruebas de la aplicación...76

Registro de un prefijo de espacio de nombres...77

¿Qué son las versiones beta de los paquetes gestionados?...77

Creación y carga de un paquete en versión beta...78

Acerca de los entornos de desarrollo y prueba del socio...79

Cómo inscribirse en entornos de prueba...79

Instalación de un paquete...79 Contenido

(5)

Disponibilidad de componentes tras la implementación...81

Configuración de paquetes instalados...81

Solución de errores en la instalación...83

Desinstalación de un paquete...84

Instalación de paquetes gestionados mediante la API...85

Creación y carga de un paquete gestionado...86

Acerca de las versiones de paquetes...87

Ejecución de Apex en la actualización/instalación del paquete...88

Ejecución de Apex en la desinstalación del paquete...91

Capítulo 5: Superación de la revisión de seguridad...94

Acerca de la revisión de seguridad...95

Pasos en la revisión de seguridad...95

El cuestionario de la revisión de seguridad...97

Creación de una organización de publicación de AppExchange...98

Cambio de la organización de publicación de AppExchange...99

Actualización de la versión del paquete en la lista de AppExchange...100

Envío de una aplicación móvil al proceso de revisión de seguridad...100

Envío de un paquete de extensión para someterlo a la revisión de seguridad...101

Recursos para la revisión de seguridad...101

Preguntas más frecuentes sobre la revisión de seguridad...102

¿Cuánto tarda el proceso de la revisión de seguridad? ¿Cada cuánto tiempo es obligatorio realizarla?...103

¿Hay alguna tasa?...103

¿Por qué tengo que hacer pruebas en mi aplicación antes de la revisión si el equipo de seguridad va a hacerlas de todos modos?...103

¿Puedo enviar mi aplicación para someterla a la revisión de seguridad antes de que esté terminada con el fin de tener este proceso hecho pronto?...104

¿Por qué el equipo de revisión tiene que hacer pruebas en la parte X o Y de mi oferta?...105

¿Debo solucionar todos los problemas que el equipo de revisión de seguridad detecte?...105

¿Por qué el equipo de revisión no puede enviarme todas las instancias de todo lo que encuentre en mi revisión?...105

Si actualizo mi aplicación, ¿debe pagar de nuevo la tasa de la revisión de seguridad para vuelva a ser revisada?...106

Cuando creo un paquete gestionado nuevo (en realidad, una actualización de mi primera aplicación), ¿tendré que pagar de nuevo la tasa para que vuelva a ser revisada la seguridad de la aplicación?...106

¿Por qué debo realizar revisiones de seguridad periódicas?...106

Entiendo que las soluciones revisadas pueden funcionar con las organizaciones con PE y GE. ¿Cómo funciona esto?...106

Capítulo 6: Publicación de la aplicación...107

¿Qué es AppExchange?...108

Vender en AppExchange...108

¿Cómo funciona AppExchange?...108

¿Quién puede utilizar AppExchange?...109

Gestión de las organizaciones de Salesforce...109

Publicación de la aplicación o el servicio...110

Publicación de aplicaciones en AppExchange...110 Contenido

(6)

Creación o modificación del perfil de proveedor...110

Creación o modificación de listas...111

Marca de la aplicación...119

Envío de la lista para su aprobación...119

Registro del paquete y elección de la configuración de la licencia...121

Notificaciones por email...121

Uso de Checkout de AppExchange...122

Preguntas más frecuentes sobre Checkout de AppExchange...123

Trabajo con prospectos de AppExchange...125

Reportes de análisis para publicadores...128

Reporte Instalaciones (Obtener ahora) (Installs [Get It Now])...129

Reporte Prospectos...129

Reporte Recursos y promociones...130

Reporte Pruebas, demostraciones y capturas de pantalla...130

Reporte Más información, videos y capturas de pantallas...131

Preguntas más frecuentes sobre AppExchange...131

Capítulo 7: Gestión de licencias y asistencia administrativa...137

Descripción general de la Aplicación de gestión de licencias (LMA)...138

Concepto de gestión de licencias...138

Diagrama de relaciones de la entidad...138

Terminología de LMA...139

Instalación de la LMA...140

Configuración de la LMA...141

Asociación de paquetes con su LMO...142

Valores predeterminados de licencias...143

Uso de la LMA...143

Acerca de los prospectos...144

Acerca de los paquetes...144

Detalles del paquete...144

Modificación de los propietarios de paquetes...145

Modificación del gestor de prospectos para un paquete...146

Acerca de las versiones de paquetes...146

Detalles de la versión del paquete...147

Acerca de las licencias...147

Detalles de licencias...147

Modificación de propietarios de licencias...149

Modificación de licencias...149

Integración con ventas y marketing...151

Mejores prácticas...151

Preguntas más frecuentes sobre la Aplicación de gestión de licencias...152

Solución de problemas...153

Capítulo 8: Prueba gratuita de la aplicación...155

¿Por qué utilizar Trialforce?...156 Contenido

(7)

Descripción general de Trialforce...156

Configuración de Trialforce...157

Vinculación de un paquete a su organización de publicación de AppExchange...158

Vinculación de un paquete con la organización de gestión de licencias...159

Solicitud de una organización de gestión de Trialforce...159

Configuración de una marca personalizada para Trialforce...160

Creación de emails con imagen de marca...161

Creación de una página de inicio de sesión con marca...161

Creación de una organización de origen de Trialforce...162

Vinculación de una organización de origen de Trialforce con la APO...163

Creación de una plantilla de Trialforce...163

Obtención de una plantilla de Trialforce revisada...164

Pruebas gratuitas en AppExchange...164

Proporcionar pruebas gratuitas en AppExchange mediante Trialforce...165

Configuración de una unidad de prueba en AppExchange...165

Prueba gratuita en AppExchange disponible cuando se instala la aplicación...166

Pruebas gratuitas en el sitio Web...166

Solicitud de un formulario de inscripción para Trialforce...166

Vinculación de una plantilla de Trialforce con el formulario de inscripción...167

Personalización del formulario de registro de HTML...168

Aprovisionamiento de organizaciones de prueba nuevas...168

Modificación de la prueba para una actualización...169

Mejores prácticas de Trialforce...169

Creación de inscripciones usando la API...170

SignupRequest...171

Inicio de solicitud de inscripción...177

Creación de una solicitud de inscripción...177

Visualización de los detalles de solicitud de inscripción...177

Agregar campos personalizados a las solicitudes de inscripción...178

Ejecución de reportes en solicitudes de inscripción...179

Uso de desencadenadores con solicitudes de inscripción...179

Creación de inscripciones de proxy para acceso de OAuth y a API...180

Preguntas más frecuentes sobre Trialforce...182

Capítulo 9: Asistencia a sus suscriptores...183

Ficha Soporte...184

Consola de compatibilidad del suscriptor...184

Visualización de detalles del suscriptor...185

Solicitud de acceso de inicio de sesión...185

Iniciar sesión en Organizaciones del suscriptor...186

Mejores prácticas...186

Solución de problemas en Organizaciones del suscriptor...186

Capítulo 10: Actualización de la aplicación...187

Creación y carga de parches...189 Contenido

(8)

Trabajo con versiones de parche...190

Versiones del código Apex...191

Efectos de la desaprobación de Apex para los suscriptores...192

Capítulo 11: Envío de una actualización...193

Acerca de las actualizaciones mediante envío...194

Mejores prácticas en las actualizaciones mediante envío...195

Asignación de acceso a los componentes y campos nuevos...196

Secuencia de comandos posterior a la instalación de ejemplo para una actualización mediante envío...196

Limitaciones conocidas en las actualizaciones mediante envío...198

Programación de actualizaciones mediante envío...198

Visualización de detalles de actualización mediante envío...200

Visualización del historial de actualizaciones de una organización...201

Apéndices...202

Apéndice A: Desarrollo y distribución de paquetes no gestionados...202

Apéndice B: Comparación de licencias de usuario de ISVforce...206

Apéndice C: Comparación de licencias de usuario de OEM...209

Glosario...213

Índice...216

(9)

Capítulo 1

Introducción

La guía de ISVforce está destinada a los proveedores de software independientes (ISV) que quieren compilar y vender aplicaciones compiladas en la plataforma Force.com. Se organiza en los capítulos siguientes:

En este capítulo...

• Funciones en el ciclo de vida de la aplicación

• Inicio rápido: punto de partida para obtener y configurar todos los entornos que va a necesitar para compilar y vender aplicaciones.

• Arquitectura y desarrollo de aplicaciones: ante de empezar a desarrollar, es importante saber que todas las piezas encajan. En este capítulo se explican las decisiones de arquitectura que hay que tomar antes del desarrollo. • Empaquetado y pruebas de la aplicación: en este capítulo también se explican

aspectos específicos del desarrollo y la realización de pruebas de aplicaciones incluidas en paquetes.

• Superación de la revisión de seguridad: más información sobre las mejores prácticas de seguridad y la planificación para la revisión de seguridad. • Publicación de la aplicación: incorporación de la aplicación en el mercado

de AppExchange.

• Gestión de licencias y asistencia administrativa: uso de la aplicación de gestión de licencias para gestionar los clientes y las licencias de las aplicaciones.

• Trialforce: creación de una prueba gratuita para ayudarle a vender la aplicación a clientes que no sean de Salesforce.

• Asistencia a sus suscriptores: prestación de asistencia técnica a los clientes para instalar y utilizar su aplicación.

• Actualización: cuando es el momento de actualizar su aplicación

(10)

Funciones en el ciclo de vida de la aplicación

En esta guía se explica el ciclo de vida completo de una aplicación de paquete por lo que algunos de los temas podrían no ser relevantes para sus intereses. En la lista siguiente se sugieren temas según la función para la que sean relevantes.

Arquitecto de aplicaciones

El arquitecto de aplicaciones determina el ámbito de la aplicación y las estructuras internas que la sustentan. Necesita conocer detalles sobre la plataforma Force.com subyacente que determinen no solo el uso de la aplicación sino también las ediciones con las que es compatible y el modo de instalación, configuración y actualización. El arquitecto debe conocer bien esta guía completo pero en especial los capítulos siguientes:

• Arquitectura y desarrollo de aplicaciones en la página 19 • Superación de la revisión de seguridad en la página 94 Desarrollador que crea, empaqueta y carga aplicaciones

El desarrollador, o con frecuencia el equipo de desarrolladores, se encarga de crear la aplicación, empaquetarla y cargarla en AppExchange. Además, actualiza la aplicación con soluciones a los problemas detectados y con funciones nuevas. El desarrollador debe consultar los capítulos siguientes:

• Arquitectura y desarrollo de aplicaciones en la página 19 • Empaquetado y pruebas de la aplicación en la página 76

• Desarrollo de la documentación de las aplicaciones en la página 51 • Actualización de la aplicación en la página 187

Publicador que distribuye y vende la aplicación y presta servicio de asistencia

El publicador de una aplicación es aquella persona o compañía que tiene un perfil y una o varias listas para la aplicación en AppExchange. Las listas de los publicadores contienen vínculos a las aplicaciones que han cargado en AppExchange o a un sitio Web de terceros. Los publicadores también establecen las configuraciones de licencias predeterminadas. El publicador debe consultar los capítulos siguientes:

• Publicación de la aplicación en la página 107 • Prueba gratuita de la aplicación en la página 155 • Asistencia a sus suscriptores en la página 183 Administrador que instala la aplicación

El administrador se encarga de descargar la aplicación desde AppExchange y de instalarla en su organización. También pueden personalizar la aplicación para adaptarla mejor a sus necesidades de negocio. En el tema siguiente puede conocer cuál es la interacción de los administradores con las aplicaciones:

• Instalación de un paquete en la página 79

Funciones en el ciclo de vida de la aplicación Introducción

(11)

Capítulo 2

Inicio rápido de ISVforce

La finalidad de este inicio rápido es introducirle en el ciclo de vida de la aplicación lo más rápido posible. Cuando lo termine, tendrá todo lo que necesita para desarrollar y publicar una aplicación empaquetada.

En este capítulo...

• Tutorial n.º 1: Inscripción • Tutorial n.º 2: Desarrollo de su

aplicación Nota: Para poder efectuar todos los pasos de este inicio rápido, deberá ser un socio de ISVforce/OEM, ya que algunas de las funciones solo están disponibles para los socios aptos.

• Tutorial n.º 3: Publicación y licencias • Tutorial n.º 4: Actualización de la

aplicación

¿Cómo se organiza el inicio rápido?

El inicio rápido se desglosa en cuatro tutoriales que deben completarse en orden. Como algunos de los pasos requieren una respuesta de email automática, el tiempo necesario para completarlos puede variar de uno a otro. No obstante, puede pararse en cualquier paso y retomar posteriormente donde lo haya dejado. • En el tutorial n.º 1 se explica el proceso de inscripción en el programa de

socios de Salesforce ISV y la obtención de todas las organizaciones (entornos) que va a necesitar.

• En el tutorial n.º 2 se explica el proceso de creación de una aplicación Hello World sencilla.

• En el tutorial n.º 3 se describe el proceso de publicación y gestión de la aplicación.

• En el tutorial n.º 4 aprenderá a actualizar su aplicación para ediciones principales y menores.

Quiero más....

Al final de cada paso, existe una sección opcional denominada Quiero más. Si quiere hacer las cosas con rapidez, vaya al siguiente paso. Sin embargo, si le gusta ir con calma y profundizar más, aquí encontrará mucha información de gran utilidad.

• Para consultar una lista de términos útiles, vea el glosario en la página 213. • Para obtener más información acerca de Force.com y obtener acceso a

muchos más recursos, visite Developer Force en http://developer.force.com. • Para leer una introducción suave al desarrollo en Force.com, consulte el

libro de trabajo de Force.com en la Web http://developer.force.com/workbook.

(12)

Tutorial n.º 1: Inscripción

En este tutorial va a poder recopilar todas las partes que necesitará para desarrollar sus aplicaciones, venderlas y prestar asistencia. Todo comienza con la inscripción en el programa de socios de AppExchange. Gracias a esta tendrá acceso al portal de socios de donde puede obtener las organizaciones de desarrollo y prueba (entornos) y donde puede crear casos para que se activen otras funciones. El primer caso que va a registrar corresponde a la solicitud de una organización de CRM que utilizará para gestionar la publicación, las licencias y las posibles ventas de su aplicación. Aunque no necesite esa organización inmediatamente, es mucho más fácil si se quita de encima cuanto antes estas tareas administrativas.

Si está familiarizado con Salesforce, sabrá que una organización es una nube en sí misma. Si no ha usado Salesforce antes, piense en la organización como un entorno aparte donde podría desarrollar, probar o publicar su aplicación.

Ilustración 1: Las organizaciones (entornos) son nubes

Paso 1: Inscribirse en el programa de socios

El primer paso es inscribirse en el programa de socios de AppExchange.

1. En el navegador, vaya a www.salesforce.com/partners y haga clic en Únase ahora (Join Now).

2. Seleccione la primera casilla de verificación: Compilar y comercializar aplicaciones comerciales mediante tecnologías de

salesforce.com (Build & Market Commercial Applications using salesforce.com Technologies) (proveedor de software independiente, socio ISV).

3. Rellene los campos en los que se solicita información suya y de la compañía.

4. En el área Preguntas adicionales (Additional Questions), haga clic en los cuadros desplegables y seleccione la respuesta

adecuada.

5. Ingrese las palabras del sistema Captcha mostradas y haga clic en Enviar inscripción (Submit Registration).

6. Enseguida recibirá un email con su nombre de usuario y una contraseña temporal. Haga clic en el vínculo para acceder al

portal de socios (https://sites.secure.force.com/partners/PP2PartnerLoginPage) e inicie sesión en él.

7. Acepte los términos de uso y rechace el mensaje emergente que aparezca. 8. Guarde esta página en Favoritos porque la va a utilizar bastante.

Felicitaciones, ya forma parte del programa de socios ISV de Salesforce.

Tutorial n.º 1: Inscripción Inicio rápido de ISVforce

(13)

Paso 2: Generar entornos de desarrollo y prueba

Para compilar y vender aplicaciones en la plataforma Force.com, necesitará varios entornos donde llevar a cabo distintas tareas. Estos entornos se denominan organizaciones. Puede obtener las organizaciones necesarias a través del portal de socios de un modo sencillo. La primera que necesita es una organización con Partner Developer Edition, que es donde va a llevar a cabo las tareas de desarrollo y posiblemente el empaquetado de la aplicación. Aunque ya disponga de una organización con Developer Edition, debería inscribirse en la edición Partner Developer Edition, ya que esta permite un mayor almacenamiento de datos, licencias y usuarios.

1. Debería haber iniciado ya sesión en el portal de socios. Si no es así, haga clic en el elemento guardado como favorito e inicie

sesión ahora.

2. En el portal de socios, en la sección Vínculos rápidos, haga clic en Crear una organización de prueba (Create a Test Org).

Ilustración 2: Generación de una organización

3. En el cuadro desplegable Edition, elija Partner Developer Edition. En lo sucesivo, y por razones de simplicidad, vamos

a denominarla organización de desarrollo.

4. Seleccione la casilla de verificación para aceptar los términos y haga clic en Enviar. En pocos minutos, recibirá un email

con un vínculo de inicio de sesión.

5. Mientras espera ese mensaje de email, puede aprovechar a generar otras organizaciones que va a necesitar. Después, se

inscribirá en una organización de prueba que será la que se utilice para probar la aplicación que desarrolle. En el área Vínculos rápidos, haga clic de nuevo en Crear una organización de prueba, pero esta vez elija Enterprise/Platform Edition. En lo sucesivo, y por razones de simplicidad, vamos a denominarla organización de prueba.

6. Unos minutos después, recibirá mensajes de email en los que se le pide iniciar sesión y cambiar la contraseña para las

organizaciones de desarrollo y prueba. Haga clic en el vínculo, cambie la contraseña y cree una pregunta y repuesta para la contraseña.

Quiero más....

Quizás ha observado que hay varios tipos diferentes de organizaciones de prueba en las que puede inscribirse. Las distintas ediciones de Salesforce tienen funciones diferentes y si tiene previsto distribuir la aplicación a otras ediciones, será conveniente probar la aplicación y asegurarse de que funciona correctamente en cada una de estas ediciones. Esto no se incluye entre los objetivos de este inicio rápido, de modo que si quiere obtener más información, consulte Consideraciones arquitectónicas para Group Edition y Professional Edition en la página 42.

Paso 3: Obtener una organización de negocio

En el paso anterior, ha obtenido organizaciones específicas para llevar a cabo las tareas de desarrollo y pruebas. Para poder publicar su aplicación y gestionar las licencias de la aplicación, necesitará una organización diseñada de forma específica para tal fin. En este paso, va a registrar un caso en el portal de socios para que se le proporcione una ISV CRM Edition. Esta edición será su “organización de negocio”, ya que se utilizará para publicar y gestionar las ventas y la distribución de su aplicación.

Nota: Esta función está disponible a los socios aptos. Para obtener más información sobre el programa de socios,

incluidos los requisitos de aptitud, visite el sitio Web www.salesforce.com/partners.

1. En el portal de socios, en la sección Vínculos rápidos, haga clic en Crear un caso (Create a Case).

Paso 2: Generar entornos de desarrollo y prueba Inicio rápido de ISVforce

(14)

Ilustración 3: Creación de un caso 2. En la sección Categoría (Category), elija la primera opción.

3. En el cuadro de la primera categoría, elija AppExchange y listas de servicios (AppExchange and Service Listings). 4. En el cuadro de la segunda categoría, elija Solicitar CRM para socio (Request CRM for Partner).

5. En el cuadro desplegable Motivo (Reason), elija Solicitud de administración (Administration Request). 6. En el cuadro desplegable Gravedad (Severity), elija Alta (High).

7. En el asunto, ingrese Necesito CRM para ISV.

8. En el campo Descripción (Description), indíquenos si ya tiene una organización o si necesita una nueva. Si ya tiene una

organización de Salesforce, puede proporcionar el Id. de esta en el campo Descripción y se agregarán dos licencias de CRM adicionales a su organización. En caso de que no tenga una organización existente, le proporcionaremos una nueva. En cualquiera de los dos casos, no se olvide de ingresar la dirección de su compañía. Después, haga clic en Guardar.

Ilustración 4: Creación de un caso en el portal de socios

9. En pocos minutos, recibirá otro email en el que se le pedirá que inicie sesión y cambie su contraseña. Hágalo e incluya la

página en los marcadores de favoritos como ha hecho antes.

Quiero más....

• Su organización de negocio puede tener muchos nombres. Algunas veces, nos podemos referir a ella como su organización de publicación de AppExchange APO, siglas en inglés), su organización de gestión de licencias (LMO, siglas en inglés) o como la CRM ISV Edition. Su organización es todas estas al mismo tiempo, por lo que lo más sencillo es denominarla “organización de negocio”.

El cierre del caso puede tardar entre 24 y 48 horas. Haga clic en Mis casos (My Cases) en el menú Vínculos rápidos para ver el estado de sus casos.

Paso 4: Editar la lista del publicador

En este paso va a iniciar sesión en AppExchange y proporcionar información sobre su compañía.

Paso 4: Editar la lista del publicador Inicio rápido de ISVforce

(15)

1. La sesión en la organización de negocio debería seguir iniciada. En la esquina superior derecha, haga clic en Agregar aplicaciones de AppExchange (Add AppExchange Apps).

2. En la esquina superior derecha, haga clic en Iniciar sesión o registrarse (Login or Register).

3. En la página de inicio de sesión, utilice su nombre de usuario y contraseña para la organización de negocio. 4. Haga clic en la ficha Publicando (Publishing).

5. Haga clic en Su perfil de proveedor (Your Provider Profile).

6. Rellene la información en el perfil de proveedor y haga clic en Guardar.

Resumen de inscripción

En este primer tutorial, se ha inscrito en el programa de socios y en todas las organizaciones que necesitará principalmente para desarrollar, probar y vender su aplicación. Recapitulemos y veamos en qué se ha inscrito y la finalidad de cada uno de estos elementos.

Programa de socios de ISV

El programa de socios le proporciona acceso al portal de socios, que es el lugar donde puede crear organizaciones, registrar casos y encontrar información general sobre el programa de socios.

Partner Developer Edition

También denominada organización de desarrollo, se trata de la organización donde va a desarrollar la aplicación y posiblemente empaquetarla para su distribución.

Organización de prueba con Enterprise Edition

También denominada organización de prueba, se trata de la organización donde va a instalar y probar su aplicación, exactamente igual que lo harán los clientes.

Organización CRM ISV

También denominada organización de negocio, se trata de la organización que se utiliza para la publicación de su aplicación, las licencias y la gestión de esta desde un punto de vista de negocio. Como ayuda para la gestión de su licencia, ha instalado la aplicación de gestión de licencias (LMA) en su organización de negocio.

Tutorial n.º 2: Desarrollo de su aplicación

En este tutorial va a aprender a crear una aplicación muy sencilla que hemos denominado “Hello World”. Esta aplicación no hará grandes cosas pero bastará para aprender dónde tiene lugar el desarrollo dentro del ciclo de vida de una aplicación en paquetes.

Paso 1: Crear una aplicación

En este paso va a crear una aplicación que contiene una página y una ficha en la que se mostrará la página.

1. En el navegador, inicie sesión en su organización con Partner Developer Edition. En lo sucesivo, vamos a denominarla

“organización de desarrollo”.

2. En Configuración, haga clic en Desarrollo > Páginas. 3. En la lista de Visualforce, haga clic en Nuevo. 4. En el campo Etiqueta (Label), ingrese Saludo.

5. En el área de marca de Visualforce, sustituya el contenido de la etiqueta <h1> por Hello World.

Resumen de inscripción Inicio rápido de ISVforce

(16)

Ilustración 5: Editor de páginas de Visualforce 6. Haga clic en Guardar.

Ahora va a asociar la página a una ficha.

1. En el menú de la barra lateral, haga clic en Crear > Fichas (Create > Tabs). 2. En la lista de fichas de Visualforce, haga clic en Nuevo.

3. En el asistente para crear una nueva ficha de Visualforce, haga clic en el cuadro desplegable y seleccione la página Hello

World que acaba de crear.

4. Para la etiqueta de fichas, ingrese Hello.

5. Haga clic en el campo Estilo de la ficha (Tab Style) y elija cualquier icono que represente a la ficha. 6. Haga clic en Siguiente, de nuevo en Siguiente y, en la página final, en Guardar.

Ahora va a crear una aplicación nueva que contenga la ficha y la página.

1. En el menú de la barra lateral, haga clic en Crear > Aplicaciones (Create > Apps). 2. Haga clic en Nuevo.

3. En el campo Etiqueta de la aplicación (App Label), ingrese Hello World y haga clic en Siguiente y, en la página siguiente,

de nuevo en Siguiente.

4. En la página Elegir fichas (Choose the Tabs), desplácese a la parte inferior de la lista de fichas disponibles, encuentre la

ficha Hello y agréguela a la lista de fichas selecconadas. Haga clic en Siguiente.

5. Seleccione la casilla de verificación Visible para que todos los perfiles puedan ver esta aplicación. Después, haga clic en Guardar.

Quiero más....

Si le da la sensación de que acaba de crear una página dentro de un contenedor, que ha colocado dentro de otro contenedor, efectivamente lo ha hecho. Y está a punto de poner todo dentro de otro contenedor más. ¿Qué son estos contenedores y qué hacen?

Una ficha es un contenedor de cosas que quiere que se muestren en la misma página: un gráfico, una tabla o la página de Visualforce que ha creado.

Una aplicación es un contenedor de fichas que aparecen las unas junto a las otras. Cuando se crea una aplicación, está se muestra disponible en el selector de aplicaciones en la esquina superior derecha de la pantalla.

Un paquete es un contenedor de cosas que ha cargado en AppExchange. Normalmente, un paquete contiene una aplicación que los clientes pueden instalar en su organización pero también puede cargar paquetes que amplíen las aplicaciones existentes. No ha creado aún un paquete; esto lo hará en el paso siguiente.

Paso 1: Crear una aplicación Inicio rápido de ISVforce

(17)

Paso 2: Empaquetar la aplicación

En este paso, va a empaquetar la aplicación para que pueda distribuirla en AppExchange. Un paquete no es más que un contenedor de componentes. En este caso, se trata de su aplicación, la ficha y la página.

1. En el menú de la barra lateral, haga clic en Crear > Paquetes (Create > Packages) y, a continuación, en Nuevo. 2. En el campo Nombre de paquete (Package Name), ingrese Hello World y haga clic en Guardar.

3. En la página Detalles de paquete (Package Detail), haga clic en Agregar componentes (Add Components). 4. Seleccione la aplicación Hello World y haga clic en Agregar a paquete (Add to Package).

Quiero más....

Cuando ha hecho clic en Agregar a paquete, ¿se ha dado cuenta de que la ficha Hello y la página de saludo se han agregado de forma automática al paquete? Cuando se crea un paquete, el marco detecta automáticamente componentes dependientes y los agrega al paquete.

Paso 3: Asignar un espacio de nombres

En este paso va a elegir un identificador único denominado espacio de nombres. Un espacio de nombres establece la diferencia entre los distintos componentes y permite hacer cosas tales como la actualización de la aplicación después de su instalación. Escoja con cuidado el espacio de nombres, ya que no podrá modificarlo después.

1. En el menú de la barra lateral, haga clic en Crear > Paquetes (Create > Packages).

2. En la lista Configuración de desarrollador, haga clic en Modificar y, en la página siguiente, haga clic en Continuar. 3. En el campo Prefijo de espacio de nombres (Namespace Prefix), ingrese un Id. alfanumérico de entre 1 y 15 caracteres y,

después, haga clic en Comprobar disponibilidad (Check Availability). Repita este paso hasta que tenga un espacio de nombres exclusivo.

4. En el campo Paquete que debe gestionarse (Package to be managed), elija el paquete Hello World y haga clic en

Revise sus selecciones (Review Your Selections).

5. Revise la información de la página y haga clic en Guardar.

Quiero más....

En el código subyacente, el espacio de nombres se antepone en todos los componentes incluidos en paquetes desde su organización de desarrollo. Esto permite que el paquete y su contenido se distinga de los paquetes de otros desarrolladores y garantiza un control exclusivo de todos los componentes empaquetados.

Paso 4: Cargar una versión beta

Antes de cargar una versión de producción de su aplicación, habitualmente se carga una versión beta para probarla.

1. En el menú de la barra lateral, haga clic en Crear > Paquetes (Create > Packages).

2. En la página Paquetes, haga clic en su paquete Hello World y, a continuación, en Cargar (Upload). 3. En la página Cargar paquete (Upload Package), ingrese un nombre y número de versión.

4. Para el tipo de versión, asegúrese de elegir Gestionado en versión beta (Managed — Beta).

5. Desplácese a la parte inferior y haga clic en Cargar (Upload). La carga puede tardar unos momentos hasta que termina.

Felicitaciones, ha cargado una aplicación en AppExchange. Su aplicación no está disponible al público pero puede acceder a ella a través de un vínculo de instalación. Lo hará en el paso siguiente.

Paso 2: Empaquetar la aplicación Inicio rápido de ISVforce

(18)

Quiero más....

La finalidad de una versión beta es únicamente probar sus funciones. Por tanto, solo se puede instalar una organización de prueba, una organización con Developer Edition o un sandbox (se explicará más adelante). El paso siguiente consiste en instalar la versión beta en la organización de prueba que ha creado en el paso 2: Generar entornos de desarrollo y prueba.

Paso 5: Instalar y probar la versión beta

La instalación de la versión beta es sencilla: basta con hacer clic en el vínculo y proporcionar el nombre de usuario y la contraseña que va a utilizar para la organización de prueba.

1. Haga clic en la URL de instalación.

Ilustración 6: Vínculo de URL de instalación

2. En la página de inicio de sesión, ingrese el nombre de usuario y la contraseña de la organización de prueba.

3. En la página Detalles de instalación del paquete (Package Installation Details), haga clic en Continuar (Continue). 4. Haga clic en Siguiente.

5. En la página Nivel de seguridad (Security Level), otorgue acceso a todos los usuarios y haga clic en Siguiente. 6. Haga clic en Instalar.

7. Cuando finalice la instalación, podrá seleccionar su aplicación en el selector de aplicación situado en la esquina superior

derecha.

Ilustración 7: Aplicación Hello World 8. En su página, debería ver la ficha Hello y el texto de saludo.

Ilustración 8: Ficha y página Hello World

Paso 5: Instalar y probar la versión beta Inicio rápido de ISVforce

(19)

Llegados a este punto, normalmente debería probar la aplicación y asegurarse de que funciona tal y como se ha diseñado. Su aplicación se instala con facilidad y muestra lo que se pretende, pasemos a otra cosa.

Quiero más....

Los paquetes de versión beta también se pueden instalar en entornos de sandbox. Un sandbox es una réplica de la organización de su cliente donde se puede desarrollar, probar o instalar aplicaciones, así como comprobar los cambios que se quieren introducir. Ninguna de las organizaciones en las que se ha inscrito en este libro de trabajo tiene un sandbox pero si lo tuviera en otra instalación y quisiera instalar allí la aplicación, deberá sustituir la parte inicial de la URL de instalación con

http://test.salesforce.com.

Resumen de la tarea de desarrollo

Felicitaciones, acaba de finalizar una parte fundamental del ciclo de vida de desarrollo de software. Los cambios que quiera hacer en un futuro en la aplicación seguirán el mismo procedimiento:

1. Modificar la aplicación existente en la organización de desarrollo 2. Incluir la aplicación en un paquete

3. Cargar el paquete como una versión beta

4. Instalar la versión beta en una organización de prueba 5. Probar la aplicación instalada

Tutorial n.º 3: Publicación y licencias

Imagine que ha pasado por varios ciclos de desarrollo con su versión beta y ya está preparado para publicar una aplicación pública. El paso siguiente consiste en cargar una aplicación de producción, también llamada versión gestionada y editada de la aplicación. Después, puede crear una lista para que otras personas puedan encontrar la aplicación y saber qué hace. Por último, va a conectar la aplicación a la organización de negocio para que pueda gestionar las licencias de las personas que instalen su aplicación.

Paso 1: Cargar en AppExchange

Este paso le puede resultar familiar, ya que se parece al paso para cargar una versión beta.

1. Si ha seguido los tutoriales sin parar, probablemente continúe su sesión iniciada en la organización de prueba. Ahora, vamos

a iniciar sesión en la organización de desarrollo.

2. Observará en la esquina superior derecha que hay un vínculo que dice Desarrollo de Hello World, versión 1.0 (Developing

Hello World, version 1.0). Haga clic en ese vínculo para acceder directamente a la página Detalles del paquete.

Ilustración 9: Desarrollo de Hello World, versión 1.0 3. En la página Detalles del paquete, haga clic en Cargar.

4. En Tipo de versión, elija Gestionado y editado.

Resumen de la tarea de desarrollo Inicio rápido de ISVforce

(20)

5. Desplácese a la parte inferior y haga clic en Cargar (Upload). 6. En el mensaje emergente, haga clic en Aceptar.

Paso 2: Crear la lista de aplicaciones

En este paso va a modificar la lista de aplicaciones y va a conectar su organización de negocio a la aplicación.

1. Después de la carga del paquete, verá un vínculo para publicar en AppExchange, haga clic en él.

Ilustración 10: Publicar en AppExchange

2. Se mostrará un cuadro de diálogo de inicio de sesión; esta vez, utilice el nombre de usuario y la contraseña de su organización

de negocio.

3. Lea y acepte los términos y condiciones, y haga clic en Acepto (I Agree).

4. En la primera pregunta se cuestiona si ya aparece en AppExchange. Lo hizo en el Tutorial n.º 1: Inscribirse, Paso 4: Editar la lista del publicador en la página 6, de modo que debe seleccionar Sí y hacer clic en Continuar.

5. Haga clic en Vincular organización nueva (Link New Organization).

6. Se le pedirá el nombre de usuario y la contraseña. Ingrese los valores correspondientes a la organización de desarrollo. 7. Haga clic en la ficha Publicando (Publishing).

8. Haga clic en Crear lista nueva (Create New Listing).

9. En la ventana emergente, ingrese un título de lista de Aplicación Hello World de <su nombre>. Será conveniente agregar el nombre porque el título de la lista debe ser exclusivo y no podemos tener a todo el mundo listando aplicaciones Hello World genéricas.

10. Seleccione el botón de opción Aplicación y, a continuación, haga clic en Enviar. 11. Rellene los campos obligatorios en la página Información básica (Basic Information). 12. Haga clic en Guardar.

Su lista ya está preparada pero aún quedan cosas por hacer, incluido el rellenado de las fichas de la parte superior. Lo haremos en el paso siguiente.

Quiero más....

No se preocupe demasiado por tener la lista perfecta, todavía no es pública y puede cambiar la lista en cualquier momento.

Paso 3: Completar la lista

En la parte superior se muestran otras fichas: Ofertas (Offering), Descripción general (Overview), Especificaciones (Specs), Asistencia técnica (Support), Contenido cargado (Uploaded Content) y Prospectos (Leads). Deberá rellenar los campos obligatorios en estas fichas para que la lista esté completa.

1. Haga clic en Ofertas.

2. Para vincular su aplicación, haga clic en Cambiar paquetes (Change Packages).

3. Seleccione su aplicación y trasládela a la lista de aplicaciones seleccionadas; a continuación, haga clic en Aceptar.

Paso 2: Crear la lista de aplicaciones Inicio rápido de ISVforce

(21)

4. En el cuadro desplegable etiquetado Seleccione la versión más reciente de la aplicación (Select the latest version of your application), seleccione su aplicación.

5. Haga clic en Guardar.

6. Haga clic en la ficha Descripción general. 7. Seleccione Gratis (Free).

8. Rellene el campo Descripción completa (Full Description) y haga clic en Guardar. 9. Haga clic en la ficha Especificaciones.

10. Haga clic en Cambiar ediciones (Change Editions).

11. En el mensaje emergente, traslade todas las ediciones a la lista de elementos seleccionados y haga clic en Enviar. Nota: La página de Visualforce que ha creado está disponible en todas las ediciones pero no siempre es así con

las demás funciones. Antes de desarrollar una aplicación completa, seguro que le interesa tener en cuenta a sus destinatarios y la edición que estos tienen. Para obtener más información sobre las ediciones y las funciones compatibles, consulte el apartado: Consideraciones arquitectónicas para Group Edition y Professional Edition en la página 42

12. Haga clic en Cambiar idiomas (Change Languages).

13. Elija el idioma en el que ha desarrollado la aplicación (inglés, probablemente) y haga clic en Enviar. 14. Haga clic en Guardar.

Las demás fichas no contienen campos obligatorios por lo que puede dejarlos en blanco de momento. Como hasta ahora, puede volver atrás cuando quiera y cambiar los valores.

Paso 4: Instalar la LMA

La aplicación de gestión de licencias (LMA, siglas en inglés) permite gestionar las ventas, las licencias y el servicio de asistencia de su aplicación. Para instalar la LMA, deberá archivar un caso en el portal de socios. Cuando el caso esté resuelto, instale la LMA en la organización de negocio.

Nota: Esta función está disponible a los socios aptos. Para obtener más información sobre el programa de socios,

incluidos los requisitos de aptitud, visite el sitio Web www.salesforce.com/partners.

1. En el mensaje de email que reciba, haga clic en el vínculo de LMA.

2. Puede leer la reseña sobre la aplicación y hacer clic en Obtener ahora (Get It Now).

3. En la ventana emergente, elija En mi Salesforce de producción (In my production Salesforce). 4. Lea y acepte los términos y condiciones, y haga clic en Instalar (Install).

5. Compruebe su contraseña y haga clic en Enviar (Submit).

6. En la página Detalles de instalación del paquete (Package Installation Details), haga clic en Continuar (Continue). 7. Haga clic en Siguiente, Siguiente e Instalar.

8. Haga clic en Implementar ahora (Deploy Now) y, en la página siguiente, haga clic en Implementar (Deploy). 9. Haga clic en la esquina superior derecha y observará que hay una aplicación nueva instalada.

Paso 4: Instalar la LMA Inicio rápido de ISVforce

(22)

Ilustración 11: Aplicación de gestión de licencias

La LMA no se utiliza directamente, sino que primero hay que desarrollar una aplicación y publicarla. Es lo que va a hacer en el paso siguiente.

Paso 5: Licencias y gestión de aplicaciones

En este paso va a conectar su aplicación a la aplicación de gestión de licencias (LMA) en su organización de negocio.

1. Haga clic en la ficha Publicando (Publishing).

2. Junto al paquete que ha cargado, haga clic en Gestionar licencias (Manage Licenses). 3. Haga clic en Registrar (Register).

4. Haga clic en Asignar (solo una vez) (Assign [One-Time Only]).

5. Ingrese las credenciales de inicio de sesión de su organización de negocio y haga clic en Enviar. 6. Haga clic en Guardar.

La aplicación tardará hasta 30 minutos en conectarse a la LMA. Descanse un rato, se lo ha ganado.

Resumen de publicación y licencias

En este tutorial, ha cargado su aplicación gestionada y editada en AppExchange y ha creado una lista para su aplicación. También ha instalado la aplicación de gestión de licencias y la ha vinculado a su aplicación. Puede usar la LMA para gestionar y renovar las licencias, así como para establecer la configuración de licencias predeterminada. Por ejemplo, puede otorgar licencia a su aplicación como prueba gratuita que caducará tras un número específico de días. Para obtener más información, consulte Gestión de licencias y asistencia administrativa en la página 137.

Ahora su aplicación tiene una lista privada en AppExchange que puede compartir con posibles clientes pero que el público general no verá a menos que se disponga del vínculo necesario. Antes de incluir la aplicación en una lista pública, deberá superar una revisión de seguridad. Esta revisión se explica en otros capítulos. Para obtener más información, consulte Pasos en la revisión de seguridad en la página 95.

Tutorial n.º 4: Actualización de la aplicación

Si está familiarizado con Salesforce, sabrá que hacemos versiones de parches semanales para solucionar problemas y varias veces al año publicamos una versión principal en la que introducimos funciones nuevas. Como proveedor de software independiente (ISV), puede hacer lo mismo: entregar versiones de parches para solucionar problemas y una versión principal para agregar funciones nuevas.

• En el caso de las funciones nuevas, el proceso es el mismo que ya conoce. Debe comenzar por modificar la aplicación, incluirla en un paquete, subir una versión beta, probar la versión beta y cargar una versión gestionada y editada. Las versiones

Paso 5: Licencias y gestión de aplicaciones Inicio rápido de ISVforce

(23)

principales aumentan el número de versión al siguiente número entero, del 1.0 al 2.0, por ejemplo, mientras que las versiones menores aumentan en una unidad el número tras el punto, de 1.0 a 1.1, por ejemplo. No hay reglas estrictas que definan exactamente lo que constituye una versión principal o una menor. Todo depende de usted.

• En el caso de las soluciones de problemas, el proceso varía un poco. Debe comenzar por crear una organización de parches, un entorno especial con funcionalidad limitada que solo se puede usar para desarrollar un parche para un paquete específico. Después de cargar el parche, puede enviarlo a sus clientes para que obtengan las soluciones a los problemas cuando inicien sesión de nuevo. Las versiones menores aumentan el número de versión al segundo decimal, de 1.0 a 1.0.1, por ejemplo. • Los clientes deben encargarse de instalar las versiones principales o menores. Sin embargo, puede enviar versiones de parche

directamente a las organizaciones de los clientes. Esta función solo está disponible para los socios de ISVforce/OEM registrados. Para obtener más información sobre el programa de socios, incluidos los requisitos de aptitud, visite el sitio Web www.salesforce.com/partners.

Como ya conoce bien el proceso para desarrollar una versión principal, trataremos aquí el desarrollo de una versión de parche y su entrega mediante envío a nuestros clientes.

Paso 1: Crear una organización de parche

Para crear un parche, debe generar una organización de desarrollo de parches nueva. Para crear una versión del parche:

1. Desde Configuración, haga clic en Crear > Paquetes. 2. Haga clic en el nombre de su paquete gestionado.

3. Haga clic en la ficha Organización de parche y, a continuación, en Nueva.

4. Seleccione la versión del paquete cuyo parche desea crear en la lista desplegable Aplicación de parche a la versión principal.

El tipo de versión debe ser Gestionado y editado.

5. Introduzca un Nombre de usuario para iniciar sesión en su organización de parche.

6. Introduzca una Dirección de email asociada con su inicio de sesión.

7. Haga clic en Guardar.

Nota: Si pierde su información de inicio de sesión, haga clic en Restablecer en la página de detalles del paquete

en Organización de desarrollo de parche para restablecer el inicio de sesión en su organización de desarrollo de parche.

En unos minutos, recibirá un email con las credenciales de inicio de sesión. Después de haber iniciado sesión y cambiado su contraseña, continúe en el paso siguiente.

Quiero más....

El desarrollo en una organización de parche está limitado. A continuación se incluye una lista de advertencias: • No se pueden agregar componentes de paquete.

• No se pueden eliminar los componentes de paquete actuales.

• Los controles de acceso de API y Apex dinámica no se pueden cambiar para el paquete. • No se puede desaprobar ningún tipo de código Apex.

• No se pueden agregar nuevas relaciones de clase de Apex, como extends.

• No se pueden agregar nuevos modificadores de acceso de Apex, como virtual o global. • No se pueden añadir nuevos servicios Web.

• No se pueden añadir nuevas dependencias de funciones.

Paso 1: Crear una organización de parche Inicio rápido de ISVforce

(24)

Paso 2: Desarrollar un parche

Vamos a hacer un cambio sencillo en la aplicación. En lugar de que se muestre solo Hello World, va a agregar la fecha del día actual.

1. En la organización de parche, en Configuración haga clic en Crear > Paquetes y, después, en el paquete Hello World. 2. En la lista de componentes de paquetes, haga clic en la página de saludo.

3. Haga clic en Modificar.

4. Justo después de la etiqueta de cierre </h1>, ingrese lo siguiente: <br/>

<apex:outputText value="The date and time is: {!NOW()}"/>

5. Haga clic en Guardar.

6. Para ver el resultado, haga clic en la ficha Hello y verá que se muestra la fecha y hora actuales.

Ilustración 12: Mostrar la fecha y hora

Esto es todo lo que necesitamos hacer en este parche. Continuemos.

Quiero más....

La función !NOW devuelve la fecha en un formato estándar. Existen muchas funciones incorporadas y maneras de dar formato al resultado. Para obtener más información, consulte la Guía del desarrollador de Visualforce.

Paso 3: Cargar el parche

Normalmente, el paso siguiente consiste en cargar un parche beta e instalarlo en una organización de prueba. Como el proceso es muy parecido al que ha seguido en el Paso 4: Cargar una versión beta y en el Paso 5: Instalar y probar la versión beta que ya realizó en el tutorial n.º 2: Desarrollo de su aplicación, no vamos a repetirlo.

1. En la organización de parche, en Configuración haga clic en Crear > Paquetes y, después, en el paquete Hello World. 2. En la página Carga del paquete, haga clic en Cargar.

3. Ingrese un nombre de versión, por ejemplo, la fecha actual.

4. Tenga en cuenta que el Número de versión ha aumentado su Número de parche.

5. Seleccione Gestionado y editado (Managed — Released).

Paso 2: Desarrollar un parche Inicio rápido de ISVforce

(25)

6. De forma opcional, introduzca y confirme una contraseña para compartir el paquete de forma privada con cualquiera que

tenga contraseña. No introduzca una contraseña si desea que el paquete esté disponible para cualquiera en AppExchange y compartir el paquete públicamente.

7. Salesforce selecciona automáticamente los requisitos que encuentra. Además, seleccione cualquier otro componente

obligatorio de las secciones Requisitos del paquete y Requisitos del objeto para notificar a los instaladores de los requisitos de este paquete.

8. Haga clic en Cargar.

Felicitaciones, ha cargado una versión de parche. Seguro que le interesa compartir el parche con otras personas. Eso es precisamente lo que vamos a hacer a continuación.

Paso 4: Instalar o enviar un parche

Hay dos maneras de entregar un parche: puede requerir que sean los clientes quienes lo instalen o puede enviárselo. Las actualizaciones mediante envío se realizan automáticamente; es decir, cuando el cliente inicia sesión, encuentra las actualizaciones. Vamos a probar esta opción.

1. Inicie sesión en la organización de desarrollo.

2. En la esquina superior derecha, haga clic en Desarrollo de Hello World, versión 1.0 (Developing Hello World, version

1.0).

Ilustración 13: Desarrollo de Hello World, versión 1.0 3. En la página Detalles del paquete, haga clic en Actualizaciones de envío (Push Upgrades). 4. Haga clic en Programar actualizaciones mediante envío.

5. En la lista desplegable Versión de parche (Patch Version), selecicone la versión de parche que va a enviar. 6. En el campo Fecha de inicio programado (Scheduled Start Date), ingrese la fecha del día actual.

7. En la sección Seleccionar organizaciones de destino (Select Target Organizations), seleccione la organización de prueba. 8. Haga clic en Programar.

¡Ya lo ha hecho! Ha enviado una versión de parche al suscriptor para que este obtenga de forma automática las actualizaciones. Debería comprobar que los clientes han recibido el parche y asegurarse de que lo han instalado correctamente.

Quiero más....

Las versiones beta no son aptas para las actualizaciones mediante envío. En este caso, deberá desinstalar la versión beta e instalar después la nueva versión beta.

Resumen de la actualización de la aplicación

En este tutorial ha aprendido a actualizar su aplicación en una organización de parche y a enviar dicha actualización a los clientes. Comenzó por crear una organización de parche específica de una versión de paquete editado. Después, modificó la aplicación, la cargó y programó la actualización mediante envío para sus clientes.

Paso 4: Instalar o enviar un parche Inicio rápido de ISVforce

(26)

Felicitaciones, ¡ha terminado! ¿O quizás esto no haya hecho más que empezar? Puede modificar la aplicación actual como quiera que sea o bien puede crear una nueva organización de desarrollo en el portal de socios y compilar otra aplicación. Puede utilizar las mismas organizaciones de prueba y ventas, así como todo lo que haya configurado para publicar y gestionar muchas más aplicaciones. Va a conseguir que ISVforce sea un éxito.

Resumen de la actualización de la aplicación Inicio rápido de ISVforce

(27)

Capítulo 3

Arquitectura y desarrollo de aplicaciones

En esta sección se incluyen conceptos importantes y decisiones de arquitectura que debe tener en cuenta antes de comenzar el desarrollo. Son los siguientes:

En este capítulo...

• Concepto de paquetes gestionados y

no gestionados • Componentes disponibles

• Límites para Group Edition y Professional Edition • Componentes disponibles

• Comportamiento especial de los componentes en paquetes

• Protección de la propiedad intelectual • Concepto de dependencias

• Consideraciones arquitectónicas para Group Edition y Professional Edition

Consulte también:

Consideraciones arquitectónicas para Group Edition y Professional Edition • Concepto de dependencias

• Creación de aplicaciones empaquetadas con Chatter • Aspecto de Salesforce coincidente • Desarrollo de la documentación de

las aplicaciones

• Creación de configuración de perfil personalizado

• Acerca de los conjuntos de permisos y la configuración de perfil

• Descripción general de las aplicaciones conectadas • Acerca del WSDL de socio • Trabajo con servicios externos • Protección de la propiedad intelectual • Núcleo de entorno

(28)

Concepto de paquetes gestionados y no gestionados

Los paquetes tienen dos formas: gestionados y sin gestionar. Paquetes no gestionados

Los paquetes sin gestionar se suelen utilizar para distribuir proyectos de código abierto o plantillas de aplicaciones y ofrecer a los desarrolladores los fundamentos de una aplicación. Una vez haya instalado los componentes de un paquete sin gestionar, los componentes se pueden modificar en la organización en la que se instalan. El desarrollador que ha creado y cargado el paquete sin gestionar no tiene control sobre los componentes instalados y no podrá cambiarlos ni actualizarlos. Los paquetes sin gestionar no se deben utilizar para migrar componentes de un Sandbox a una organización de producción. En su lugar, utilice Conjuntos de cambios.

Paquetes gestionados

Los clientes de salesforce.com suelen utilizar los paquetes gestionados para distribuir y vender aplicaciones a los clientes. Estos paquetes se deben crear a partir de una organización de Developer Edition. Mediante AppExchange y la aplicación de gestión de licencias (LMA), los desarrolladores pueden vender y gestionar licencias basadas en usuarios en la aplicación. Los paquetes gestionados también son totalmente actualizables. Para garantizar actualizaciones sin problemas, puede que algunas modificaciones destructivas como la eliminación o modificación de objetos o campos no se realicen. Los paquetes gestionados también ofrecen los siguientes beneficios:

• Protección de la propiedad intelectual de Apex

• Compatibilidad de versiones para componentes accesibles de API integrada • Capacidad para aplicar divisiones y parches a versiones anteriores

• Capacidad de enviar actualizaciones de parches a los suscriptores de manera sencilla

• Asignación de nombres únicos a todos los componentes para garantizar instalaciones sin conflictos Las siguientes definiciones ilustran estos conceptos:

Componentes

Un componente es una parte constituyente de un paquete. Define un elemento, como un objeto personalizado o un campo personalizado. Puede combinar componentes de un paquete para producir funciones o aplicaciones potentes. En un paquete sin gestionar, los componentes no se pueden actualizar. En un paquete gestionado, algunos componentes pueden actualizarse y otros no.

Atributos

Un atributo es un campo de un componente, como el nombre de una plantilla de email o la casilla de verificación Permitir reportes de un objeto personalizado. En un componente no actualizable de un paquete gestionado o sin gestionar, los atributos son modificables por el desarrollador (el creador del paquete) y el suscriptor (el instalador del paquete). En un componente actualizable de un paquete gestionado, el desarrollador puede modificar algunos atributos, otros los puede modificar el suscriptor y algunos están bloqueados, por lo que no se pueden modificar.

Planificación de la edición de paquetes gestionados

La edición de un paquete de AppExchange es parecida a la edición de cualquier otro programa en el desarrollo de software. Puede que desee implementarlo mediante repeticiones para garantizar que cada componente funciona como se espera. Incluso puede ofrecer una versión beta a aquellos usuarios que se hayan ofrecido para instalar una primera versión de su paquete y enviarle sus comentarios.

Una vez haya editado un paquete publicándolo en el directorio de AppExchange, cualquiera podrá instalarlo. Por ello, planifique cuidadosamente su edición. Revise los estados definidos a continuación para familiarizarse con el proceso de edición. Salesforce

Concepto de paquetes gestionados y no gestionados Arquitectura y desarrollo de aplicaciones

(29)

aplica automáticamente el estado adecuado a su paquete y componentes dependiendo de la configuración de carga que seleccionara y el punto en el que se encuentre dentro del proceso de edición.

Descripción Estado

El paquete no se ha convertido en un paquete gestionado o el componente no se ha agregado a un paquete gestionado. Tenga en cuenta un componente que esté Sin gestionar

"Gestionado en versión beta" puede pasar al estado "No gestionado" si se retira de un paquete gestionado. Todos los paquetes son no gestionados a menos que se indique lo contrario con uno de los siguientes iconos gestionados.

El paquete o componente se ha creado en la organización de Salesforce actual y está gestionado, pero no se ha editado por una de las tres razones siguientes: Gestionado en versión beta

• No se ha cargado.

• Se ha cargado habiendo seleccionado Gestionado en versión beta. Esta opción evita que se publique y esté disponible de forma pública en AppExchange. El desarrollador todavía puede modificar cualquier componente pero tal vez el instalador no pueda dependiendo de qué componentes se han incluido en el paquete.

El paquete o componente se ha creado en la organización de Salesforce actual y está gestionado. También se ha cargado con la opción Gestionado y editado Gestionado y editado

seleccionada, indicando que puede publicarse y estar disponible de forma pública en AppExchange. Tenga en cuenta que una vez que pase un paquete a este estado, ni el desarrollador ni el instalador podrán modificar algunas propiedades de los componentes.

Este tipo de edición se considera una edición principal.

Si tiene que proporcionar una actualización menor para un paquete gestionado, considere la creación de un parche en lugar de una edición principal. Un parche Parche

permite a un desarrollador cambiar la funcionalidad de los componentes existentes en un paquete gestionado, mientras garantiza a los suscriptores experimentar que no hay cambios visibles en el paquete.

Este tipo de edición se considera una versión de parche.

El paquete o componente se ha instalado desde otra organización de Salesforce pero está gestionado.

Gestionado e instalado

Un desarrollador puede decidir redefinir las funciones de un paquete gestionado con el paso del tiempo al evolucionar los requisitos. Esto puede implicar la necesidad de volver a diseñar algunos componentes del paquete gestionado. Los desarrolladores no pueden eliminar algunos componentes en un paquete Gestionado y editado, pero pueden desaprobar un componente en una versión posterior del paquete para que los nuevos suscriptores no reciban el componente, mientras que el componente continúa funcionando para los suscriptores existentes y las integraciones de API.

Componentes disponibles

No todos los componentes se pueden incluir en paquetes para su distribución. Si crea una aplicación que utiliza componentes que no se pueden incluir en paquetes, sus suscriptores tendrán que crear y configurar esos componentes después de instalar su aplicación. Si la facilidad de instalación es un importante preocupación para sus suscriptores, tenga en cuenta los componentes que no se pueden incluir en paquetes en su proceso de desarrollo.

Componentes disponibles Arquitectura y desarrollo de aplicaciones

(30)

La siguiente tabla muestra los componentes disponibles en un paquete gestionado y si son o no actualizable o eliminables. Las siguientes secciones describen las columnas de la tabla y sus valores.

Actualizable

Algunos componentes se actualizan a una versión más reciente cuando se actualiza un paquete. • No: El componente no se puede actualizar.

Sí: El componente se puede actualizar. Suscriptor que se puede eliminar

Un suscriptor o instalador de un paquete puede eliminar el componente. • No: El suscriptor no puede eliminar el componente.

Sí: El suscriptor puede eliminar el componente. Desarrollador que se puede eliminar

Un desarrollador puede eliminar algunos componentes después de cargar el paquete como Gestionado y editado. Los componentes eliminados no se eliminan en la organización del suscriptor durante la actualización de un paquete. El atributo Se puede proteger contiene más detalles acerca de la eliminación de componentes.

No: El desarrollador no puede eliminar un componente Gestionado y editado.

Sí: El desarrollador puede eliminar un componente Gestionado y editado. Se puede proteger

Los desarrolladores pueden marcar ciertos componentes como protegidos. Los componentes creados en la organización del suscriptor no se pueden vincular o hacer referencia a componentes protegidos. Un desarrollador puede eliminar un componente protegido en una futura versión sin necesidad de preocuparse de errores en las instalaciones. Sin embargo, si se marca un componente como no protegido y se publica de forma global, el desarrollador no podrá eliminarlo. Cuando el suscriptor actualiza a una versión del paquete donde se ha eliminado el componente, éste último de elimina de la organización del suscriptor.

No: No se puede marcar el componente como protegido.

Sí: Se puede marcar el componente como protegido. Protección de IP

Algunos componentes incluyen automáticamente la protección de propiedad intelectual, como la confusión del código Apex. Las únicas excepciones son métodos de Apex declarados como globales, lo que significa que se puede ver las firmas del método por el suscriptor. La información en los componentes que incluye en paquetes y publica puede ser visible para usuarios en AppExchange. Tenga cuidado cuando agregue su código a un custom s-control, una fórmula o página de Visualforce, o cualquier otro componente que no puede ocultar en su aplicación.

No: El componente no es compatible con la protección de propiedad intelectual.

Sí: El componente es compatible con la protección de propiedad intelectual

Protección de IP Se puede proteger Desarrollador que se puede eliminar Suscriptor que se puede eliminar Actualizable Componente No No No No Sí Acción No No Sí Sí No Instantánea analítica Componentes disponibles Arquitectura y desarrollo de aplicaciones

(31)

Protección de IP Se puede proteger Desarrollador que se puede eliminar Suscriptor que se puede eliminar Actualizable Componente Sí No Sí (si no está establecido como acceso global) No Sí Clase de Apex No No No No Sí Razón de colaboración de Apex No No Sí Sí No Nuevo cálculo de colaboración de Apex Sí No Sí (si no está establecido como acceso global) No Sí Desencadenador de Apex No No Sí Sí No Aplicación No No No No Sí Tipo de artículo No No No Sí No Centro de llamadas No No Sí No Sí Formato compacto No No Sí Sí Sí Aplicación conectada No No, excepto vínculos Sí, si está protegido No Sí Botón o vínculo personalizado personalizados (para la página de inicio únicamente) No No Sí Sí Sí Campo personalizado No Sí Sí, si está protegido No Sí Etiqueta personalizada No No No No Sí Objeto personalizado No No No No Sí Tipo de reporte personalizado Sí No No No Sí Configuración personalizada No No Sí Sí No Tablero No No Sí Sí No Documento No No Sí Sí No Plantilla de email No No No No Sí Conjunto de campos Componentes disponibles Arquitectura y desarrollo de aplicaciones

Referencias

Documento similar

¿Cómo se traduce la incorporación de ésta en la idea de museo?; ¿Es útil un museo si no puede concebirse como un proyecto cultural colectivo?; ¿Cómo puede ayudar el procomún

4.- Másteres del ámbito de la Biología Molecular y Biotecnología (9% de los títulos. Destaca el de Biotecnología Molecular de la UB con un 4% y se incluyen otros

- Fase Visual: Color rojo cereza. Puede presentar un pequeño precipitado de sales tartáricas o de polifenoles polimerizados. - Fase Olfativa: Aroma limpio y complejo, donde destaca

- Resolución de 30 de agosto de 2018, de la dirección general de Formación Profesional y Enseñanzas de Régimen Especial, de la Conselleria de Educación, Investigación, Cultura

Debido a la calidad y el legado de nuestra compañía, los cuales se reflejan en nuestros pianos, elegir un instrumento hecho por Steinway &amp; Sons tiende a ser una decisión

La ayuda de un pago único de 200 euros propuesta en la prórroga del Real Decreto ley 6/2022 para compensar la pérdida de poder adquisitivo de los hogares con rentas en 2021

Como otros AINE, los productos que contengan naproxeno deben utilizarse con precaución en los pacientes con disfunción renal o antecedentes de renopatía, ya que el naproxeno inhibe

Esta formación se produce mediante el doctorado (13 alumnos, lo que significa el 32% de los encuestados), diferentes másteres entre los que destacan de nuevo el de Profesorado