EnWebSphereCommercepuedecrearuncatálogode dosmaneras:utilizandolas herramientas deGestióndeproductosde WebSphereCommerceAcceleratoro utilizandoLoaderpackage paracargardeformamasiva elcatálogo.Normalmente, uncatálogosecargadeformamasivayluegosemantieneutilizandolas
herramientas deGestióndeproductos.
Creación
de
datos
de
catálogo
en
formato
XML
Utilice elcatálogodeejemplocomobaseparaaprendera crearelcatálogodesu tienda. Reviseloscomentariosde losarchivosXMLparaobtenerinformación acercade quétablasdebase dedatossellenancondatosylasrelacionesentrelos datos.Elcapítulo″Elementosdecatálogo″delapublicaciónWebSphereCommerce, Guíaparaeldesarrollodetiendasproporcionainstruccionesadicionalessobrecómo crearelementosde catálogo.Algunosdeloselementosdescritosenelcapítulo Elementos decatálogoson específicosdeunatiendahabilitadaparaATP.Puestoque latiendaExpressStorenoestáhabilitadaparaATP,nonecesitacrearelementos específicos deATP.
Creación
de
datos
de
catálogo
en
formato
CSV
Si seproporcionandatosdecatálogoenformatode textodelimitado,esnecesario realizarvariospasosparacargar losdatosCSVenlabase dedatosdeWebSphere Commerce.
1. Limpiar losdatosCSV
2. TransformarlosdatosCSVendatosXMLgenéricos
3. GenerarunaDTDparalabasede datosdeWebSphereCommerceServer 4. TransformarlosdatosXMLgenéricosendatosXMLdeWebSphereCommerce 5. Resolverlosidentificadoreseneldocumento XML
6. Cargar losdatosenlabasede datosdeWebSphereCommerceServer Paraobtener másinformación,consultelosrecursossiguientes:
v Paraunadescripcióndetallada decómocrearuncatálogodecomercioa partir dedatosCSV,consulteelcapítulotitulado″Aggregateand transformdatafor commercecatalogs″ delapublicación,WebSphereCommerce V5.4CatalogDesignand ContentManagement.EstapublicaciónestádisponibleenelsitioWebde IBM PublicacionesRedbooks, http://www.ibm.com/redbooks/.
v Hayunaaplicaciónde ejemplo,ExampleofloadingCSVdataintoaWebSphere CommerceServer5.4database,disponibleenlapáginadesoporte
http://www.ibm.com/software/commerce/support/.Esteejemplocontiene scriptsydatosde ejemploquecargancategorías, productosycódigosdeartículo adicionalesenuncatálogoexistente.
Tengaencuentaquesicargalosdatosdeejemplode estaaplicaciónenuna tiendaExpressStore,tendráqueestablecernivelesdeinventarioantesdepoder realizarelpedidodelosproductosdeejemplodesdelatienda.Elejemplo tambiéncontieneciertos datosespecíficosdeATPquenosonnecesariosenla tiendaExpressStore;siutilizaelejemplocomobase,puedeeliminarlas referenciasalas tablasespecíficas deATP,talescomoITEMVERSN, VERSIONSPC,DISTARRANGySTOREITEM.
Capítulo
9.
Carga
de
la
información
de
clientes
existente
Estecapítulodescribecómocargarinformacióndeclientesexistentede unarchivo CSV (valoresseparadosporcomas)enlabasededatosde WebSphereCommerce utilizandoLoaderpackage. UnarchivoCSV contienedatosde tablacomouna serie de líneasdetextoASCII.Laslíneasestánorganizadasporcolumna.Elvalorde cadacolumnaestáseparadoporuna comadelvalordelacolumnasiguiente,y cadafilaempiezaunanuevalínea.Muchosprogramasdehojadecálculopueden exportar datoscomoarchivosCSV.Estossonlospasosaseguir:
1. CreararchivosCSVenelformatocorrecto.
2. TransformarlosdatosCSVendatosXMLgenéricos.
3. GenerarunaDTDparalabasede datosdeWebSphereCommerce.
4. TransformarlosdatosXMLgenéricosendatosXMLdeWebSphereCommerce. 5. Resolverlosidentificadoreseneldocumento XML.
6. Cargar losdatosenlabasede datosdeWebSphereCommerce.
CreacióndearchivosCSV
__Paso1. Laseccióndescribirácómo creararchivosCSV paralas tablas siguientes:
Nombredelatabla Descripción
MEMBER creaunanuevaentradademiembro
USER creaelusuario
MBRREL crealasrelacionesdemiembros,paradefinir
lajerarquíaparallegaralnuevonodode usuario
Opcionalmente,esposiblequetambiéndeseecargarlosdatossiguientes:
USERPROF perfildeusuario
BUSPROF perfildeempresa
ADDRESS direcciones
MBRROLE roles
MBRATTRVAL atributosdemiembropersonalizados
Transformación delosdatosCSVendatosXMLgenéricos
__Paso2. TransformelosdatosCSVrecibidosdeldirectorcomercialenunúnico archivo dedatosXML.ParaconvertirarchivosCSVenarchivosXML seutilizaelmandatoTextTransform.
a. Creearchivosde esquema.
Losarchivosde esquemade textoindican aTextTransformcómo analizarunarchivofuenteCSVdeterminado. Enconcreto,cada archivode esquemade textoindicalosvaloresparaelcampo, registroy delimitadordetexto,asícomosiseincluyeno nolíneas decabeceraenelarchivo fuente.
1) Abra uneditordetextoode XML.
2) Paracadaarchivo CSV,creeunarchivode esquema
correspondiente.SustituyaelvalordelatributoElementNamepor elvaloradecuado.
<?xml version="1.0" encoding="UTF-8"?> <TextSchema DataType = "CSV Format"> <RecordDescription FieldSeparator = "," RecordSeparator = " " StringDelimiter = """ HeaderIncluded = "true" HeaderLines = "1" ElementName = "xyz"> </RecordDescription> </TextSchema>
3) Guardelosarchivosdeesquema. b. Creeunarchivo manifiesto.
Elarchivo manifiesto,manifest.txt,tambiéndenominadoarchivo de″mandatos″ode″parámetros″, dainstruccionesa laherramienta detransformacióndetexto.Elarchivomanifiestoespecifica:
v quéarchivossehandeanalizarcomo entrada
v quéarchivosde esquemadetextosehandeutilizarparacada archivo fuente
v quéarchivossehandeutilizarparalasalida
v cómograbar enelarchivode salida(CreateoAppend)
Losarchivosmencionadosenelarchivomanifest.txt seutilizarán comoentradaparalatransformacióndetexto.
1) Enuneditordetexto,creeelarchivosiguiente: a.csv,a_schema.xml,a_data.xml,Create
b.csv,b_schema.xml,bdata.xml,Append c.csv,c_schema.xml,c_data.xml,Append 2) Guardeelarchivocomomanifest.txt. c. EjecuteelmandatoTextTransform:
Linux 400 txttransform.sh manifest.txt Windows txttransform.cmd manifest.txt
Elarchivodesalidaseespecificacomoc_data.xml.Tambiénsecrean archivosDTDy deesquemacorrespondientes,c_data.dtdy
c_data.xsd.
GeneracióndeunaDTDparalabasededatosdeWebSphereCommerce
__Paso3. Genere unarchivo DTDparaaquellastablasde labase dedatosde WebSphereCommercealasquevaaimportardatos.ElmandatoDTD Generateaceptacomoentradaelnombrede labasededatos,el nombredelusuariode basededatos,lacontraseñadelusuariode basede datosyunarchivoquecontieneunalistade nombresdetabla. ElmandatogeneracomosalidaunarchivoDTD.
a. Creeunarchivo quecontengauna listadenombresdetabla.Cada nombredetabla debeestarenunalíneaapartey losnombres debenescribirse enenminúsculas,porejemplo:
address busprof mbrattrval mbrrel mbrrole member user userprof
b. Guardeelarchivo comotablenames.txt. c. EjecuteelmandatoDTDGenerate:
dtdgen -dbname nombre_bd -dbuser usuario_bd -dbpwd contraseña_bd -infile tablenames.txt -outfile wcsample.dtd
donde: dbname
Linux Windows Nombredelabasede datosdedestino. 400 Esteeselnombrede labase dedatoscomose muestraeneldirectorio debasede datosrelacional (WRKRDBDIRE).
dbuser
Linux Windows Nombredelusuarioqueseconectaala basededatos.
400 Sueleser elmismoqueelnombre deusuariode lainstancia.
dbpwd Contraseñadelusuarioqueseconectaa labase dedatos. infile
Nombredeunarchivode entradaquecontieneunnombre detabla debasede datosencadalínea.
outfile
Nombredelarchivo DTDde salida. Elmandatocreaelarchivowcsample.dtd.
Transformación delosdatosXMLgenéricosendatosXMLdeWebSphere Commerce
__Paso4. TransformelosdatosXMLcreadosenelpaso2 enlapágina57enun documentoXMLqueseajustea laDTDcreadaenelpaso3enla página 58.
ParatransformardatosXMLgenéricosendatosXMLdeWebSphere CommerceseutilizaelmandatoXMLTransform.ElmandatoXML Transformaceptaunarchivo fuenteXMLyunarchivo XSLcomo entradaElmandatoXMLTransformgeneracomosalidaundocumento XMLnuevoqueseajustaa laDTD definidaporwcsample.dtd.
ElarchivoXSLesunelementoesencialenesteproceso.Llevaacabo dostareasimportantes:
a. Definelacorrelacióndedatosde laDTD deorigenalaDTDde destino.
b. Definelosidentificadoresespecialesquesenecesitan parala resoluciónde identificadoresquetienelugarenelpaso5enla página60.
ElarchivoXSLdeejemploincluyecomentariosqueexplicanmuchas delas variables,parámetrosy elementoslógicosincluidosenel documentoXSL.
a. EjecuteelmandatoXMLTransform,
xmltransform -infile c_data.xml -transform file.xsl
-outfile wcdata.xml -param donde:
dbname
Linux Windows Nombredelabasede datosdedestino. 400 Esteeselnombredelabasede datoscomose muestraeneldirectorio debasededatosrelacional (WRKRDBDIRE).
dbuser
Linux Windows Nombredelusuarioqueseconectaala basededatos.
400 Sueleserelmismoqueelnombrede usuariode lainstancia.
dbpwd Contraseñadelusuarioqueseconectaalabase dedatos. infile
NombredeldocumentoXMLdeentradaquecontienelos registrosdetabla
outfile
Nombredelarchivo DTDdesalida.
Resolución deidentificadoresenel documentoXML
__Paso5. Acontinuación,resuelvalosidentificadoreseneldocumentoXML, wcdata.xml, quesehacreadoenelpaso4 enlapágina59.Pararesolver losidentificadoresseutilizaelmandatoIDResolve. ElmandatoID Resolveaceptacomoentradaelnombredelabase dedatos,elnombre delusuariodebase dedatos,lacontraseñadelusuariodebase de datos,eldocumento XMLde origeny elmétododeresolución (mixed). ElmandatogeneraundocumentoXMLnuevocomosalida. Estearchivotienetodoslosvaloresdeclavesprimariayexternas establecidos correctamentedentrodeldocumentoXML.
(wcdataid.xml)
a. EjecuteelmandatoIDResolve:
idresgen -dbname nombre_bd -dbuser usuario_bd -dbpwd contraseña_bd
-infile wcdata.xml -outfile wcdataid.xml -method mixed donde:
dbname
Linux Windows Nombredelabasede datosdedestino. 400 Esteeselnombredelabasede datoscomose muestraeneldirectorio debasededatosrelacional (WRKRDBDIRE).
dbuser
Linux Windows Nombredelusuarioqueseconectaala basededatos.
400 Sueleserelmismoqueelnombrede usuariode lainstancia.
dbpwd Contraseñadelusuarioqueseconectaalabase dedatos. infile
NombredeldocumentoXMLdeentradaquecontienelos registrosdetabla.
outfile
Nombredelarchivo XMLdesalidaquesehade generar; estearchivo sepuedeutilizarcomoentradaparael programadeutilidadLoader.
method
Métodoqueseha deutilizaralprocesarelarchivo de entrada.Elmétodopor omisióneselmétododecarga (load).Elmétododecarga(load)trataelarchivode entradacomosilosregistrosnoexistieranenlabasede datos.Elmétododeactualización(update)presuponeque yahayidentificadoresparalosobjetosespecificados.Utilice elmétodocombinado(mixed)cuandoalgunosregistrosno existanenlabasede datosyotrossí.
Cargadelosdatosenla basededatosdeWebSphereCommerce
__Paso6. Porúltimo,carguelosdatosXMLenlabasededatosdeWebSphere Commerce.
a. massload -dbname nombre_bd -dbuser usuario_bd -dbpwd contraseña_bd
-infile wcdataid.xml -method sqlimport