![Deprecated feature](../../base/images/deprecated.png)
URL AddressAdd
Este mandato añade una nueva entrada de dirección para un usuario o una organización.
Utilice este mandato con SSL (Secure Sockets Layer) para asegurarse de que la contraseña de conexión del cliente y la información personal estén cifradas. 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.
- memberId
- Si no se ha especificado memberId, el valor predeterminado es el usuario actual (el usuario que está conectado). Este parámetro puede utilizarse para añadir direcciones para entidades de organización u otros usuarios.
- URL
- Se necesita: El URL al que se debe llamar cuando el mandato se completa satisfactoriamente.
- businessTitle
- El puesto en la empresa de la persona cuya dirección se va a añadir (por ejemplo, Presidente o Director).
- Apodo
- Se necesita: El apodo o identificador de la dirección que se va a añadir. Un miembro puede tener varias direcciones, cada una de ellas con un apodo. El sistema trata la dirección que proporciona un usuario cuando se registra como la dirección propia del usuario y establece el apodo de dicha dirección en el ID de conexión del usuario.
- personTitle
- El tratamiento que se dará al usuario cuya dirección se va a entrar (por ejemplo, Dr., Rev., Sr. o Sra.)
- lastName
- El apellido del usuario.
- firstName
- El nombre del usuario.
- middleName
- El segundo nombre o inicial del usuario.
- organizationName
- La organización a la que representa el usuario.
- organizationUnitName
- El nombre de la unidad dentro de la organización del usuario.
- officeAddress
- La dirección interna de la organización (por ejemplo, código postal interno).
- primaria
- Si la dirección especificada es una dirección primaria para un tipo de dirección determinado:
- 1
- primaria
- 0
- no primaria (el valor predeterminado)
- addressType
- El tipo de dirección. Por ejemplo:
- S
- de envío
- B
- de facturación
- SB
- de envío y facturación (el valor predeterminado)
- address1
- La primera línea de la dirección postal del usuario.
- address2
- La segunda línea de la dirección postal del usuario.
- address3
- La tercera línea de la dirección postal del usuario.
- city
- El nombre de la ciudad donde reside el usuario.
- estado
- El nombre de la provincia, estado o equivalente donde reside el usuario
- zipCode
- El código postal de la dirección del usuario
- country
- El nombre del país o región donde reside el usuario.
- bestCallingTime
- Si se ha de llamar al usuario durante el día o por la noche
- 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á.
- phone1
- El número de teléfono primario del usuario.
- phone1Type
- El tipo de teléfono utilizado para el número de teléfono primario del usuario, 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
- Si se ha de listar el número de teléfono primario del usuario:
- 1
- sí
- 0
- No
- phone2
- El número de teléfono secundario del usuario.
- phone2Type
- El tipo de teléfono utilizado para el número de teléfono secundario del usuario, 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.
- publishPhone2
- Si se ha de listar el número de teléfono secundario del usuario:
- 1
- sí
- 0
- No
- fax1
- El número de fax primario del usuario.
- fax2
- El número de fax secundario del usuario.
- email1
- La dirección de correo electrónico o web primaria del usuario.
- email2
- La dirección de correo electrónico o web secundaria del usuario.
- billingCode
- El código de la organización compradora 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.
- taxPayerId
- Una serie que se utiliza para identificar al usuario para impuestos; resulta especialmente útil con software de impuestos.
- packageSuppression
- Si se ha de incluir material publicitario cuando se envíe el pedido:
- 1
- include
- 0
- no incluir
- addressfield1 hasta addressfield3
- Campos personalizables.
- shippingGeoCode
- Un código de envío basado en la región geográfica; resulta especialmente útil con software de impuestos.
- taxGeoCode
- Un código de impuestos basado en la región geográfica; resulta especialmente útil con software de impuestos.
- outAddressName
- Si se especifica outAddressName=s (donde s es cualquier serie), entonces s=<address_id> se establecerá como una de las propiedades de respuesta tras ejecutar el mandato, donde <address_id> es el ID de la dirección que se añade o actualiza.
Ejemplo 1
El ejemplo siguiente añade una entrada a la tabla de direcciones utilizando el apodo "mother_address."
https://myhostname/webapp/wcs/stores/servlet/AddressAdd?
nickName=mother_address&address1=7+Elm+St.&city=Toronto&state=Ontario
&country=Canada&zipCode=M4M+2T1&lastName=Lee&URL=/
Ejemplo 2
El ejemplo siguiente añade una dirección de facturación completa.
https://myhostname/webapp/wcs/stores/servlet/AddressAdd?URL=basemall.jsp&nickName=msur1nickB
&addressType=B&primary=1&personTitle=Dr&lastName=last&firstName=first
&middleName=middle&address1=address1&address2=address2
&address3=address3&city=Toronto&state=Ontario&country=Canada
&zipCode=A1A1A1&phone1=111-111-1111&phone2=222-222-2222
&phone1Type=PHN&phone2Type=TTY&publishPhone1=1&publishPhone2=0
&bestCallingTime=E&fax1=333-333-3333&fax2=444-444-4444
&email1=msur1nickB@email1.com&email2=msur1nickB@email2.com
&businessTitle=bustitle&organizationName=organization
&organizationUnitName=oraganizationunit&officeAddress=officeaddress
&packageSuppression=0&addressField1=field1&addressField2=field2
&addressField3=field3&billingCode=billingCode&billingCodeType=BT
&shippingGeoCode=shippinggeocode&taxGeoCode=taxgeocode
Nota: Para las direcciones temporales y permanentes, cada miembro puede tener un grupo de varias direcciones. Cuando se crea una dirección, su estado se marca con una "P", que significa "permanente", e indica que es la dirección actual. Cuando se actualiza una dirección, se crea un nuevo registro de la dirección con las actualizaciones. El nuevo registro se marca con una "P" y el registro anterior se marca con una "T", que significa "temporal", e indica que es la dirección histórica.
Cuando se suprime una dirección con el mandato AddressDelete, su estado se marca con una "T".
Comportamiento
- Para cada tipo de dirección, puede haber cero o una dirección primaria (el campo primary es igual a 1). Si la nueva dirección es la primaria, entonces este mandato cambiará la dirección primaria existente de este tipo de dirección (si existe) a no primaria.
- Si no se especifica el parámetro primary, el valor predeterminado es 0 (no primaria).
- Si no se especifica el parámetro addressType, el valor predeterminado es 'SB' (envío y facturación).
- Comprueba si el apodo especificado ya está utilizándose.
- Llama al mandato de tarea AuditAddressCmd para realizar la comprobación de parámetros adicional. Los desarrolladores de tiendas deben añadir código nuevo al mandato de tarea AuditAddressCmd si desean personalizar la comprobación.
- Crea una nueva dirección en la tabla ADDRESS.
- Si el miembro no tiene una libreta de direcciones, se crea una nuevo registro en la tabla ADDRBOOK.
- Si el mandato no se ejecuta correctamente, se llama al mandato AddressErrorView.
- Una vez ejecutado correctamente, llama al URL especificado.
- De forma predeterminada, el mandato validará que las longitudes de serie de los valores de propiedad sean inferiores o iguales al tamaño predeterminado de la columna de base de datos correspondiente. Si se sobrepasa la longitud máxima, se emite una ECApplicationException. Esta validación se puede inhabilitar mediante la adición de la siguiente sección dentro del elemento <MemberSubSystem> en el archivo de configuración de la instancia: <Address PropertyLengthValidation="false" />
Condiciones de excepción
- El parámetro URL no puede ser nulo y su longitud debe ser mayor que 0.
- El parámetro nickName no debe ser nulo, su longitud debe ser mayor que 0 y no debe existir en esta libreta de direcciones.
- El parámetro primary debe ser nulo o debe ser igual a 0 ó 1.
- Los parámetros publishPhone1, publishPhone2 y packageSuppression deben ser nulos o deben ser un entero.
- El manejador de errores captura el código de error, que puede ser uno de los siguientes.
Explicación Código de error Falta el parámetro URL _ERR_CMD_MISSING_PARAM El parámetro URL es una serie vacía _ERR_CMD_INVALID_PARAM Falta nickName _ERR_CMD_MISSING_PARAM (5020) nickName está vacío _ERR_CMD_INVALID_PARAM (5030) Se ha especificado primary y no es igual a 0 ó 1 _ERR_CMD_INVALID_PARAM (5017) Se ha especificado publishPhone1 y no es un entero _ERR_CMD_INVALID_PARAM (5170) Se ha especificado publishPhone2 y no es un entero _ERR_CMD_INVALID_PARAM (5180) Se ha especificado packageSuppression y no es un entero _ERR_CMD_INVALID_PARAM (5190)