Comando UserRegistrationAdd
Questo comando consente di creare un record di registrazione per un utente.
Utilizzare questo comando con SSL (Secure
Sockets Layer) per verificare che la password di accesso e le informazioni personali siano codificate. Per fare ciò, digitare il comando con il protocollo di sicurezza HTTPS.
I dati di registrazione raccolti da questo comando appartengono alle seguenti categorie:
- Dati di autorizzazione
- Profilo Azienda-consumatore (B2C)
- Profilo Azienda-azienda (B2B)
- Informazioni demografiche
B2B è un'estensione di B2C. Un cliente B2C che si registra avrebbe normalmente un profilo B2C. Un cliente B2B che si registra avrebbe normalmente sia un profilo B2C che B2B.
Valori dei parametri
- http://nome_host/path/
-
(Obbligatorio) Il nome completo del WebSphere Commerce Server e il percorso di configurazione.
- langId
- Imposta o reimposta la lingua prescelta per la durata della sessione; le lingue supportate per un negozio si trovano nella tabella STORELANG
- forUser
- L'ID di collegamento dell'utente per conto del quale viene eseguito il comando; solo una persona con l'autorizzazione per elaborare ordini può specificare questo parametro.
- forUserId
- Come per forUser, ma con identificazione dell'utente mediante
l'ID utente interno,
come rilevato nella tabella
USERS.
- URL
- (Obbligatorio) L'URL da richiamare quando il comando viene eseguito correttamente.
- storeId
- Il numero di riferimento del negozio associato a questo comando.
- logonId
- (Obbligatorio) L'ID di collegamento dell'utente che si registra.
- logonPassword
- (Obbligatorio) La password dell'utente che si registra. La password viene protetta da crittografia mediante il comando UserRegistrationAdd prima di essere salvata nel database.
- logonPasswordVerify
- (Obbligatorio) La password dell'utente che si registra immessa una seconda volta.
- parentMember
- Se parentMember è nullo, impostare tale valore su Organizzazione predefinita.
Se parentMember non
è nullo, può assumere due
diversi tipi di
valori:
Encrypted
orgEntityId (utilizzando
"nc_crypt -e
<orgentityId>")
DN of orgEntity
(ad esempio "o=Default
Organization, o=Root
Organization")
- userStatus
- Se l'account dell'utente che si registra è abilitato:
1=abilitato (valore predefinito)
0=non abilitato
- passwordExpired
- Se la password dell'utente che si registra è scaduta:
0=non scaduta (valore predefinito)
1=scaduta
- challengeQuestion
- La domanda di verifica per la conferma dell'identità dell'utente che si registra
- challengeAnswer
- Risposta alla domanda di verifica identità.
- registerType
- Il tipo di utente:
G=Utente guest, ovvero un utente che non fornisce informazioni personali.
R=Utente registrato, ovvero un utente che fornisce informazioni personali.
A=Responsabile, ovvero un utente registrato che è anche un amministratore.
S=Responsabile del sito, ovvero un utente registrato che è anche il responsabile del sito.
- profileType
- Indicare il tipo di registrazione:
<Null>= nessun dato personale, solo dati di autenticazione; soltanto i dati per la tabella USERREG.
C=dati di profilo registrazione business-to-consumer; dati di autenticazione e anche i dati per la tabella USERPROF (predefinito).
B=dati di profilo registrazione business-to-business; dati di autenticazione e anche i dati per la tabella BUSPROF.
- preferredCurrency
- La valuta preferita dell'utente che si registra per le transazioni; una chiave esterna che fa riferimento alla colonna SETCURR della tabella SETCURR.
- preferredLanguage
- La lingua preferita dell'utente che si registra; una chiave esterna che fa riferimento alla colonna LANGUAGE_ID della tabella LANGUAGE.
- da userField1 a userField3
- Campi personalizzabili.
- displayName
- Il nome utilizzato per visualizzare il nome dell'utente che si registra in un elenco di riepilogo.
- photo
- L'URL o il percorso per una foto dell'utente che si registra.
- preferredCommunication
- Numero di telefono preferito dell'utente che si registra (memorizzato nella tabella ADDRESS), ad esempio:
P1=telefono 1
P2=telefono 2
- preferredDelivery
- La modalità di consegna preferita dall'utente che si registra.
- preferredMeasure
- L'unità di misura preferita da chi si registra.
- descrizione
- Una descrizione dell'utente che si registra.
- userProfileField1 e userProfileField2
- Campi personalizzabili.
- organizationId
- L'identificativo della società dell'utente che si registra; la chiave esterna per la tabella ORGENTITY.
- organizationUnitId
- L'identificativo dell'unità aziendale dell'utente che si registra; la chiave esterna per la tabella ORGENTITY.
- employeeId
- L'identificativo dell'utente che si registra con il proprio dipendente.
- alternateId
- Un ID speciale assegnato dall'organizzazione o unità aziendale dell'utente che si registra per questo particolare utente.
- employeeType
- Lo stato dell'utente che si registra come dipendente, per esempio regolare, permanente, appaltatore, part time.
- departmentNumber
- L'identificativo di reparto dell'utente che si registra.
- manager
- Il nome del manager dell'utente che si registra.
- secretary
- Il nome della segretaria dell'utente che si registra.
- gender
- Il genere dell'utente che si registra.
- age
- L'età dell'utente che si registra.
- income
- Il reddito annuale dell'utente che si registra.
- incomeCurrency
- La valuta in cui viene pagato il reddito dell'utente che si registra.
- maritalStatus
- Lo stato civile dell'utente che si registra.
- children
- Il numero di figli dell'utente che si registra.
- household
- Il numero di persone nel nucleo familiare dell'utente che si registra; il valore predefinito è 1.
- Nome società
- Il nome di società dell'organizzazione rappresentata dall'utente che effettua la registrazione, fornito nella compilazione delle informazioni demografiche.
- hobby
- Gli hobby dell'utente che si registra.
- orderBefore
- Se l'utente che si registra ha già passato un ordine in precedenza. Questo valore viene fornito dall'utente che si registra.
- timeZone
- Il fuso orario del luogo in cui lavora l'utente che si registra (riportato in ore GMT +/-).
- Da demographicField1 a demographicField4
- I campi personalizzabili per le informazioni demografiche; si tratta di campi a carattere unico.
- demographicField5
- Un campo personalizzabile per informazioni demografiche; un campo di 254 caratteri.
- demographicField6
- Un campo personalizzabile per informazioni demografiche; un campo intero.
- demographicField7
- Campo personalizzabile per informazioni demografiche; un campo di 64 caratteri.
- personTitle
- Il titolo dell'utente che si registra (ad esempio, Dr., Rev., Sig. o Sig.ra).
- lastName
- (Obbligatorio se la modalità di autenticazione è LDAP) Il cognome dell'utente che si registra. Se la modalità di autenticazione è LDAP, questo parametro è obbligatorio.
- firstName
- Il nome dell'utente che si registra.
- middleName
- Il secondo nome o l'iniziale dell'utente che si registra.
- address1
- La prima riga dell'indirizzo dell'utente che si registra.
- address2
- La seconda riga dell'indirizzo dell'utente che si registra.
- address3
- La terza riga dell'indirizzo dell'utente che si registra.
- city
- Il nome della città dove risiede l'utente che si registra.
- state
- Lo stato, la provincia o equivalente, in cui risiede l'utente che si registra
- zipCode
- Il codice di avviamento postale (CAP) dell'indirizzo dell'utente che si registra.
- country
- Il nome della nazione o della regione dove risiede l'utente che si registra.
- phone1
- Il numero di telefono principale dell'utente che si registra.
- phone2
- Il numero di telefono secondario dell'utente che si registra.
- phone1Type
-
Il tipo di telefono utilizzato dall'utente che si registra per il numero di telefono principale, ad esempio TTY per gli utenti con problemi all'udito, PCM per pulse-coded modulation o CEL per il telefono cellulare. E' un campo di 3 caratteri.
- phone2Type
-
Il tipo di telefono utilizzato dall'utente che si registra per il numero di telefono secondario, ad esempio TTY per gli utenti con problemi all'udito, PCM per pulse-coded modulation o CEL per il telefono cellulare. E' un campo di 3 caratteri.
- publishPhone1
- 1=Un indicatore che il numero di telefono principale dell'utente che si registra è nell'elenco.
- 0=Un indicatore che il numero di telefono principale dell'utente che si registra non è nell'elenco.
Questi campi publishPhone non hanno valori predefiniti. Se il campo non viene utilizzato, rimane null nel database.
- publishPhone2
- 1=Un indicatore che il numero di telefono secondario dell'utente che si registra è nell'elenco.
- 0=Un indicatore che il numero di telefono secondario dell'utente che si registra non è nell'elenco.
- bestCallingTime
- D=Un indicatore per avvisare che le ore diurne sono le più opportune per telefonare all'utente che si registra.
- E=Un indicatore per avvisare che le ore serali sono le più opportune per telefonare all'utente che si registra.
- fax1
- Il numero di fax principale dell'utente che si registra.
- fax2
- Il numero di fax secondario dell'utente che si registra.
- e-mail1
- L'indirizzo principale e-mail o Web dell'utente che si registra.
- e-mail2
- L'indirizzo secondario e-mail o Web dell'utente che si registra.
- businessTitle
- La posizione dell'utente che si registra nell'azienda.
- organizationName
- Il nome dell'organizzazione rappresentata dall'utente che si registra.
- organizationUnitName
- Il nome dell'unità all'interno dell'organizzazione rappresentata dall'utente che si registra.
- officeAddress
- L'indirizzo interno dell'organizzazione (ad esempio, fermo posta).
- billingCode
- Il codice azienda dell'utente che si registra per identificare gli indirizzi di spedizione o di fatturazione e il centro costi.
- billingCodeType
- Il codice che indica il metodo di struttura dei codici per il codice di fatturazione. Il valore predefinito è D, assegnato dall'acquirente. Il valore 02 indica
che è assegnato da Ariba.
- packageSuppression
- 1=Un indicatore per includere inserimenti di pacchetti per la spedizione dell'ordine
- 0=Un indicatore per non includere inserimenti di pacchetti per la spedizione dell'ordine
Questo campo non ha valori predefiniti. Se il campo non viene utilizzato, rimane null nel database.
- da addressfield1 a addressfield3
- Campi personalizzabili.
- taxPayerId
- Una stringa utilizzata per identificare l'utente per la tassazione, particolarmente utile con il software delle tasse
- shippingGeoCode
- Un codice di spedizione basato sulla regione geografica, particolarmente utile con il software delle tasse.
- taxGeoCode
- Un codice di imposta basato sulla regione geografica, particolarmente utile con il software delle tasse.
Esempio 1
Il seguente esempio crea un record di registrazione per l'acquirente, che comprende tutti i parametri richiesti dal comando predefinito, per poi richiamare il comando InterestItemDisplay:
https://myhostname/webapp/wcs/stores/servlet/UserRegistrationAdd?
&URL=/webapp/wcs/stores/servlet/InterestItemDisplay&logonId=jennyk
&logonPassword=butter&logonPasswordVerify=butter
&lastName=Kohl&Address1=255+Consumers+Road&City=Toronto
&State=Ontario&Country=Canada
Esempio 2
Questo esempio inserisce una serie completa di dati in un record per un cliente consumatore:
https://myhostname/webapp/wcs/stores/servlet/UserRegistrationAdd?storeId=31
&langId=-1&URL=basemall.jsp&logonId=msur1&logonPassword=msur1
&logonPasswordVerify=msur1&userStatus=1&passwordExpired=0
&challengeQuestion=question&challengeAnswer=answer
&profileType=C&preferredCurrency=CAD&preferredLanguage=1
&userField1=field1&userField2=field2&userField3=field3
&displayName=displayname&photo=photo&preferredMeasure=metric
&preferredCommunication=P1&preferredDelivery=preferreddelivery
&description=description&userProfileField1=field1
&userProfileField2=field2&taxPayerId=taxpayerid&gender=M&age=3
&income=3&incomeCurrency=1&maritalStatus=S&children=3
&household=3&companyName=IBM&hobbies=hobbies&orderBefore=Y
&timeZone=EST&demographicField1=1&demographicField2=2
&demographicField3=3&demographicField4=4&demographicField5=5
&demographicField6=6&demographicField7=7&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=msur1@email1.com&email2=msur1@email2.com
&businessTitle=bustitle&organizationName=organization
&organizationUnitName=oraganizationunit&officeAddress=officeaddress
&billingCode=BillingCode&billingCodeType=BT&packageSuppression=1
&addressField1=field1&addressField2=field2&addressField3=field3
&shippingGeoCode=shippinggeocode&taxGeoCode=taxgeocode
Azione
- Aggiorna la tabella USERS e modifica il tipo di registrazione da 'G' (guest) a 'R' (registrato).
- Crea un record in ognuna delle seguenti tabelle: USERREG,
USERPROF, USERDEMO e ADDRESS.
Se l'utente è un utente aziendale(profileType = 'B'), viene creato un record anche nella tabella BUSPROF.
Se l'utente non dispone di una rubrica, viene creato un record anche nella tabella ADDRBOOK.
- Crea un indirizzo chiamato indirizzo di registro il cui soprannome è lo stesso del logonId specificato.
Il campo selfAddress di questo indirizzo verrà impostato su '1'.
- Se non viene specificato parametro profileType, l'impostazione predefinita è 'C' (Cliente).
- Se non viene specificato il parametro passwordExpired, l'impostazione predefinita è 0 (non scaduto).
- Se non viene specificato il parametro userStatus, l'impostazione predefinita è 1 (attivato).
- Se non viene impostato preferredLanguage, ricavarlo dal contesto del comando.
- Controlla i parametri richiesti per le informazioni di registrazione.
- Richiama il comando AuditUserRegistrationCmd per controllare i parametri aggiuntivi.
Per personalizzare il controllo, gli sviluppatori del sito devono aggiungere altro codice al comando AuditAddressCmd.
- Se il parametro preferredCurrency non è nullo, richiamare i comandi SetCurrencyPrefCmd.
- Se la modalità di autenticazione è LDAP, creare un utente sul server LDAP.
Collegare il cliente creando un cookie con firma digitale, che viene rispedito al browser per identificare la sessione dell'utente. L'acquirente si trova al momento in una sessione autenticata. Il
file cookie contiene le seguenti informazioni:
- ID_SESSIONE
- Indicatore dell'iscrizione dell'acquirente
- Data e ora di iscrizione dell'acquirente
- Una sigla digitale
- Richiama il comando di attività UserRegistrationRoleAssignCmd per assegnare
i ruoli durante l'autoregistrazione. Al momento questo comando attività non
produce alcun risultato e deve essere ignorato dai clienti se questi ultimi desiderano
assegnare i ruoli durante l'autoregistrazione.
- Se il collegamento non riesce, richiamare UserRegistrationErrorView.
- Completata l'operazione con esito positivo, richiamare l'URL di reindirizzamento specificato.
Condizioni di eccezione
- Il parametro URL deve essere diverso da null e deve avere una lunghezza superiore a 0.
- Il parametro logonId deve essere diverso da null e deve avere una lunghezza superiore a 0.
- Il parametro logonId non può essere già presente nel database WebSphere Commerce. Se la modalità di autenticazione è LDAP, il logonId non deve essere presente anche sul LDAP.
- Il parametro logonPassword non può essere nullo e deve essere maggiore di 0 e minore o uguale a 70.
- Il parametro logonPassword è uguale alogonPasswordVerify.
- Il parametro profileType deve essere nullo o deve essere uguale a 'B' o a 'C'.
- I parametri userStatus e passwordExpired devono essere nulli oppure uguali a 0 oppure a 1.
- Il parametro preferredCurrency deve essere nullo oppure una chiave esterna impostata nella tabella SETCCURR.
- Il parametro preferredLanguage deve essere nullo oppure una chiave esterna impostata nella tabella LANGUAGE.
- I parametri age, income, children, household, demographicField6,
publishPhone1, publishPhone2 e packageSupression devono essere nulli oppure un numero intero.
- Se il parametro profileType è 'B', devono verificarsi le seguenti condizioni:
- Se il parametro organizationId non è nullo, deve essere una chiave esterna impostata su righe di tipo O nella tabella ORGENTITY.
- Se il parametro organizationUnitId non è nullo, il parametro organizationUnitId deve essere un riferimento di chiave esterna a righe di tipo OU nella tabella ORGENTITY.