Deprecated feature

URL UserRegistrationUpdate

Este URL actualiza la entrada de registro para un usuario registrado.

Aviso: El URL UserRegistrationUpdate solo se debe ejecutar como HTTP POST, no HTTP GET. Esto evitará que la contraseña se almacene en el historial de navegador o los registros de servidor web.
Importante: Para actualizar una contraseña de un usuario registrado, utilice el mandato ResetPassword. Para obtener más información, consulte URL ResetPassword.

Este URL actualiza la entrada de registro para un usuario registrado. Para ejecutar este URL, el usuario debe conectarse primero al sistema HCL Commerce como usuario registrado. Si el usuario actual es un cliente invitado, este mandato llamará al mandatoUserRegistrationAdd para registrar un nuevo usuario. La información para los usuarios se almacena en las tablas de base de datos MEMBER, USERS, USERREG, ADDRESS, ADDRBOOK, MBRREL, USERPROF, BUSPROF, USERDEMO y ADDRESS.

Utilice este URL con SSL (Secure Sockets Layer) para asegurarse de que la información del usuario esté cifrada. Para ello, escriba el mandato con el protocolo seguro HTTPS.

Estructura de URL

http:// host_name/path/
El nombre completo de Transaction server y la vía de acceso de configuración.

Valores de parámetros

langId
Establece o restablece el idioma preferido durante el tiempo que dura la sesión; los idiomas soportados para una tienda se encuentran en la tabla STORELANG.
forUser
El ID de conexión del usuario u organización en cuyo nombre se ejecutará el mandato; este parámetro solo lo puede especificar una persona con autorización para procesar pedidos.
forUserId
Igual que forUser, pero el usuario se identifica mediante el ID de usuario interno que aparece en la tabla USERS.
URL
Se necesita: El URL al que se debe llamar cuando el mandato se completa satisfactoriamente.
logonId
El ID de conexión del usuario que se registra.

Si está utilizando LDAP, no se permite cambiar el logonID de un usuario debido a que requiere eliminar y volver a crear al usuario en LDAP. Este proceso hace que se pierdan todos los atributos de usuario que no son de HCL Commerce como, por ejemplo, la contraseña.

Si no está utilizando LDAP, no se recomienda cambiar el ID de inicio de sesión del usuario porque el subsistema de promoción almacena el ID de inicio de sesión del creador de la promoción en la columna XMLPARAM de la tabla PX_PROMOTION.
Nota: Cuando se utiliza el mandato UserRegistrationUpdate para cambiar el logonID, el mandato actualizará automáticamente la columna de base de datos USERS.DN. No presuponga que ADDRESS.NICKNAME también cambiará. En su lugar, debería utilizarse el siguiente buscador para obtener la dirección automática de un usuario: AddressAccessBean.findSelfAddressByMember(Long memberID).
Deprecated featurelogonPassword
La contraseña del usuario que se registra. En modalidad de base de datos, la contraseña se cifra antes de guardarla en la base de datos. En modalidad LDAP, la contraseña solo se almacena en el servidor LDAP.
El parámetro logonPassword está en desuso en HCL Commerce Version 9.1. La funcionalidad de este parámetro se ha sustituido por el mandato ResetPassword. Para obtener más información, consulte URL ResetPassword.
Deprecated featurelogonPasswordVerify
Será necesario si se utiliza logonPassword: La contraseña del usuario que se registra, escrita por segunda vez.
El parámetro logonPasswordVerify está en desuso en HCL Commerce Version 9.1. La funcionalidad de este parámetro se ha sustituido por el mandato ResetPassword. Para obtener más información, consulte URL ResetPassword.
preferredCurrency
La moneda preferida del usuario que se registra para realizar transacciones; una clave externa que hace referencia a la columna SETCCURR de la tabla SETCURR.
preferredLanguage
El idioma preferido del usuario que se registra; una clave externa que hace referencia a la columna LANGUAGE_ID de la tabla LANGUAGE.
userField1, userField2, userField3
Campos personalizables.
challengeQuestion
Pregunta para identificación para la confirmación verbal de la identidad del cliente.
challengeAnswer
Respuesta a la pregunta para identificación.
descripción
Descripción del usuario que se registra.
userProfileField1, userProfileField2
Campos personalizables.
photo
El URL o la vía de acceso a una foto del usuario que se registra.
preferredCommunication
El teléfono que prefiere el usuario que se registra (está almacenado en la tabla ADDRESS), por ejemplo: P1=teléfono 1 P2=teléfono 2
preferredDelivery
La modalidad de entrega preferida del usuario que se registra.
preferredMeasure
La unidad de medida preferida del usuario que se registra.
taxPayerId
Una serie que se utiliza para identificar al usuario para impuestos; resulta especialmente útil con software de impuestos.
alternateId
Un ID especial que la organización o unidad de organización de la empresa del usuario que se registra le ha asignado de forma determinada.
departmentNumber
El identificador de departamento para el usuario que se registra.
employeeId
El ID asignado por la empresa al usuario que se registra.
employeeType
El estado como empleado del usuario que se registra (por ejemplo, fijo, eventual, contratista, a tiempo parcial).
manager
El nombre del jefe del usuario que se registra.
organizationId
El identificador de la empresa del usuario que se registra; es una clave foránea a la tabla ORGENTITY.
organizationUnitId
El identificador de la unidad de organización del usuario que se registra; es una clave externa a la tabla ORGENTITY.
secretary
El nombre de la secretaria del usuario que se registra.
age
La edad del usuario que se registra.
children
El número de hijos que tiene el usuario que se registra.
companyName
El nombre de la empresa a la que representa el usuario que se registra, que se obtiene al cumplimentar la información sobre datos estadísticos
dateOfBirth
Fecha de nacimiento. El formato es aaaa-mm-dd, por ejemplo: 1980-01-01.
demographicField1, demographicField2, demographicField3, demographicField4
Campos personalizables para datos estadísticos; se trata de campos de un solo carácter.
demographicField5
Campo personalizable para datos estadísticos; un campo de 254 caracteres.
demographicField6
Campo personalizable para datos estadísticos; se trata de un campo de número entero.
demographicField7
Campo personalizable para datos estadísticos; se trata de un campo de caracteres variables con una longitud de 64.
gender
El sexo del usuario que se registra.
hobbies
Las aficiones del usuario que se registra.
household
El número de personas de la unidad familiar del usuario que se registra; el valor predeterminado es 1.
income
Los ingresos anuales del usuario que se registra.
incomeCurrency
La moneda en que cobra el sueldo el usuario que se registra.
maritalStatus
El estado civil del usuario que se registra.
orderBefore
Si el usuario que se registra ha formalizado anteriormente un pedido. Este valor lo proporciona el usuario que se registra.
timeZone
El huso horario en que el usuario que se registra realiza su jornada laboral (se indica como +/- horas GMT).
address1, address2, address3
La dirección del usuario que se registra, hasta un máximo de tres líneas de información.
addressField1, addressField2, addressField3
Campos personalizables.
addressType
La finalidad de la dirección. Los valores válidos son:
S
shipto
B
billto
SB
shipto y billto (El valor predeterminado.)
bestCallingTime
D
Un indicador de que la mejor hora para llamar al usuario que se registra es durante el día.
E
Un indicador de que la mejor hora para llamar al usuario que se registra es durante la tarde.
billingCode
El código de la organización del usuario que se registra utilizado para identificar las direcciones de envío o facturación y el centro de costes.
billingCodeType
El código que designa el método de la estructura de código que se utiliza para el código de facturación. El valor predeterminado es D y lo asigna el comprador.
city
El nombre de la ciudad donde reside el usuario que se registra.
country
El nombre del país o región donde reside el usuario que se registra.
email1
La dirección de correo electrónico o web primaria del usuario que se registra.
email2
La dirección de correo electrónico o web secundaria del usuario que se registra.
Nota: De forma predeterminada, no se utiliza para notificaciones para el miembro.
receiveEmail
Determina si el registrante desea recibir actividades de correo electrónico de marketing para la tienda actual (o para todas las tiendas si durante la sesión no se ha visitado ninguna tienda):
true
El usuario desea recibir actividad de correo electrónico de marketing.
false
El usuario no desea recibir actividades de correo electrónico (valor predeterminado).
receiveSMS
Especifica si el registrante desea recibir mensajes SMS de marketing para la tienda actual (o para todas las tiendas si durante la sesión no se ha visitado ninguna tienda). Los valores válidos son true o false (valor predeterminado).
receiveSMSNotification
Indica si el usuario desea recibir mensajes de texto SMS de notificación de pedidos. Los valores válidos son true o false (valor predeterminado).
fax1
El número de fax primario del usuario que se registra.
fax2
El número de fax secundario del usuario que se registra.
firstName
El nombre del usuario que se registra.
lastName
Es necesario si el modo autenticación es LDAP: El apellido del registrante. Si la modalidad de autenticación es LDAP, este parámetro es obligatorio.
middleName
El segundo nombre o inicial del usuario que se registra.
officeAddress
La dirección interna (por ejemplo, código postal interno).
organizationName
El nombre de la organización a la que representa el usuario que se registra.
organizationUnitName
El nombre de la unidad dentro de la organización a la que representa el usuario que se registra.
packageSuppression
1
Un indicador de que se ha de incluir material publicitario cuando se envíe el pedido.
0
Un indicador de que no se ha de incluir material publicitario cuando se envíe el pedido
No hay ningún valor predeterminado para este campo. Si el campo no se utiliza, permanecerá como nulo en la base de datos.
personTitle
El tratamiento que se dará al usuario cuya dirección se va a entrar (por ejemplo, Dr., Rev., Sr. o Sra.)
phone1
El número de teléfono primario del usuario que se registra.
phone1Type
El tipo de teléfono utilizado para el número de teléfono primario del usuario que se registra, por ejemplo TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este campo es de 3 caracteres.
phone2
El número de teléfono secundario del usuario que se registra.
phone2Type
El tipo de teléfono utilizado para el número de teléfono secundario del usuario que se registra, por ejemplo TTY para personas con problemas de audición, PCM para modulación por pulsos codificados o CEL para teléfono móvil. Este campo es de 3 caracteres.
publishPhone1
1
Un indicador de que el número de teléfono primario del usuario que se registra aparece en la lista.
0
Un indicador de que el número de teléfono primario del usuario que se registra no aparece en la lista
No hay ningún valor predeterminado para estos campos publishPhone. Si el campo no se utiliza, permanecerá como nulo en la base de datos.
publishPhone2
1
Un indicador de que el número de teléfono secundario del usuario que se registra aparece en la lista.
0
Un indicador de que el número de teléfono secundario del usuario que se registra no aparece en la lista
mobilePhone1
Número de teléfono móvil del usuario que se registra utilizado para SMS, por ejemplo, 4161235555.
mobilePhone1Country
Código de país utilizado para el número de teléfono móvil del que se registra, por ejemplo, CA para Canadá.
shippingGeoCode
Un código de envío basado en la región geográfica; resulta especialmente útil con software de impuestos.
estado
El nombre de la provincia, estado o equivalente donde reside el usuario que se registra.
taxGeoCode
Un código de impuestos basado en la región geográfica; resulta especialmente útil con software de impuestos.
zipCode
El código postal de la dirección del usuario que se registra.
Atributos de miembro personalizados
Puede conseguir atributos de miembro personalizados (tabla MBRATTRVAL) para este usuario con la siguiente sintaxis: &attributeName_storeId_action_number=value
Donde:
attributeName
El nombre del atributo personalizado que ya se ha definido en la columna NAME de la tabla MBRATTR.
storeId
El ID de tienda de la tienda para la que se aplica el attributeName. Especifique "null" si el atributo no es específico de la tienda.
acción
Especifica la acción que se va a realizar con el valor:
a
añadir valor
r
sustituir valor
d
eliminar valor
number
En el caso de attributeNames de varios valores, especifique este parámetro para asignar varias entradas que tengan el mismo attributeName, storeId o action.
value
El valor que desea asignar al atributo.
A continuación se muestran ejemplos de sintaxis para atributos o parámetros personalizados:
  • Actualiza la base de datos con el valor rojo para un atributo personalizado definido para el color favorito del usuario en la tienda 10001:
    &favoritecolor_10001_r_1=red
  • Actualiza dos atributos: En la tienda 10001, el color favorito del usuario es el rojo y en la tienda 10002, el color favorito del usuario es el azul:
    &favoritecolor_10001_r_1=red&favoritecolor_10002_r_1=blue
  • Suprime un atributo de la tienda 10001:
    &favoritecolor_10001_d_1=red

Ejemplo 1

El ejemplo siguiente actualiza un usuario registrado para que cambie su apellido y ciudad.

https://myhostname/webapp/wcs/stores/servlet/UserRegistrationUpdate?lastName=Thomas&city=Markham&URL=MallFrontView

Comportamiento

  • Tenga en cuenta que el miembro padre y el tipo de perfil del usuario no se pueden cambiar.
  • Llama a un mandato de tarea vacío denominado PreUserRegistrationUpdateCmd. Los desarrolladores de tiendas pueden sobrescribirlo para cambiar la entrada para el mandato.
  • Actualiza el registro del usuario registrado actual en la tabla USERS.
  • Si la modalidad de autenticación es 'LDAP', puede que también se actualice información de usuario en el servidor LDAP.
  • Si la modalidad de autenticación es 'LDAP', el ID de conexión no se puede cambiar.
  • Si se especifica uno o más campos relacionados con las tablas USERPROF, BUSPROF o USERDEMO, actualiza cada una de estas tablas. Si no hay ningún registro, crea un registro nuevo en estas tablas.
  • Si se especifica uno o más campos relacionados con la tabla ADDRESS, la dirección automática (también denominada dirección de registro, con el campo selfAddress establecido en '1') también se actualizará. La dirección antigua se marcará como 'T' (temporal) y se creará un nuevo registro en la tabla ADDRESS. Si este usuario no tiene una dirección automática, se creará una dirección automática nueva. Si se ha cambiadologonPassword, llama al mandato de tarea AuthenticationPolicyCmd para verificar o actualizar las credenciales de un usuario.
  • Comprueba los parámetros de información de registro obligatorios.
  • Llama al mandato de tarea AuditUserRegistrationCmd para comprobar los parámetros adicionales. Los desarrolladores de tiendas deben añadir código nuevo al mandato de tarea AuditUserRegistrationCmd si desean personalizar la comprobación.
  • Llama al mandato de tarea SetCurrencyPrefCmd para establecer la moneda preferida en el contexto de mandato.
  • Cuando se utiliza LDAP, el usuario se crea en la base de datos y en el servidor LDAP. La información de autenticación se almacena únicamente en la base de datos, pero toda la demás información se copia también en la base de datos.
  • Llama a un mandato de tarea vacío denominado PostUserRegistrationUpdateCmd. Los desarrolladores de tiendas pueden sobrescribirlo para realizar operaciones adicionales.
  • Si el mandato no se ejecuta correctamente, se llama al mandato de vista UserRegistrationErrorView. Cuando la acción se completa satisfactoriamente, se llama al URL especificado.
  • Cuando se crea el usuario utilizando este mandato, el sistema asigna roles basándose en el archivo MemberRegistrationAttributes.xml. Cuando elija los roles que hace falta asignar, el sistema utiliza la siguiente información: El tipo de registro de 'UserRegistration', el árbol de miembros predecesores para el usuario, y la tienda en la que el usuario se está registrando.

Condiciones de excepción

  • Si el parámetro URL es nulo, el sistema genera una excepción con la clave de mensaje _ERR_CMD_MISSING_PARAM
  • Si la longitud del valor del parámetro URL es igual a 0, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • Si el parámetro logonId no es nulo, pero su longitud es igual a 0, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • En modalidad LDAP, si logonId no es nulo, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • Si la longitud del valor del parámetro logonPassword no es nulo, y es igual a 0 o es mayor que 70, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • Si logonPassword no es nulo pero logonPasswordVerify es nulo, el sistema genera una excepción con la clave de mensaje _ERR_CMD_MISSING_PARAM.
  • Si logonPassword no es nulo y su valor no es igual que el valor de logonPasswordVerify, el sistema genera una excepción con la clave de mensaje EC_UREG_ERR_PASSWORDS_NOT_SAME.
  • Si el valor de preferredCurrency no es nulo, y no es una clave foránea establecida en la tabla SETCURR, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • Si el valor de preferredLanguage no es nulo, y no es una clave externa establecida en la tabla LANGUAGE, el sistema genera una excepción con la clave de mensaje _ERR_CMD_INVALID_PARAM.
  • Si cualquiera de los siguientes parámetros: age, income, children, household, demographicField6, publishPhone1, publishPhone2 o packageSuppression, no son nulos ni números enteros, el sistema inicia una excepción con el mensaje clave _ERR_CMD_INVALID_PARAM.