This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
opac.bat [31/10/2006 15:06] fernando creado |
opac.bat [05/05/2009 00:00] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Script opac.bat ====== | ||
+ | <note warning> | ||
+ | **OBSOLETO** | ||
+ | </note> | ||
+ | |||
+ | |||
+ | <code dos> | ||
+ | @echo off | ||
+ | |||
+ | :: =================================================================== | ||
+ | :: OPAC.BAT | ||
+ | :: | ||
+ | :: Este script genera el conjunto de archivos utilizados en el OPAC. | ||
+ | :: | ||
+ | :: Requiere utilitarios CISIS: mx, msrt, i2id, id2i. Para conversión | ||
+ | :: de las bases a Linux, necesita crunchmf y crunchif. | ||
+ | :: | ||
+ | :: Opciones de configuracion: | ||
+ | :: path del cipar | ||
+ | :: path de los utilitarios CISIS | ||
+ | :: conversion de bases a Linux | ||
+ | :: | ||
+ | :: La base de origen debe tener la codificacion "ANSI". Las bases | ||
+ | :: creadas con Catalis ya traen esa codificacion. | ||
+ | :: | ||
+ | :: Usamos "seq=filename.id¦" para que el poco probable | ||
+ | :: caracter '¦' sea tomado como delimitador de campos (y, en | ||
+ | :: consecuencia, no tengamos separacion en campos). Quizas | ||
+ | :: convenga emplear otro caracter? Revisar. | ||
+ | :: | ||
+ | :: ATENCION: como hacemos si los registros ya vienen con ^9 en los | ||
+ | :: campos de encabezamientos? | ||
+ | :: | ||
+ | :: TO-DO: reescribir esto como un script Bash para Linux. | ||
+ | :: | ||
+ | :: TO-DO: Necesitamos medir el tiempo de ejecucion del script, y | ||
+ | :: revisar de manera general su diseño, porque es bastante lento | ||
+ | :: (en un Pentium III) | ||
+ | :: | ||
+ | :: (c) 2003-2004 Fernando J. Gomez - CONICET - INMABB | ||
+ | :: =================================================================== | ||
+ | |||
+ | |||
+ | :: CONFIGURACION | ||
+ | set CONVERT_LINUX=1 | ||
+ | |||
+ | :: CONFIGURACION | ||
+ | :: Agregamos al PATH el directorio de los utilitarios CISIS | ||
+ | set PATH=%PATH%;D:\cisis | ||
+ | |||
+ | :: Parametros obligatorios (base de origen y directorio destino) | ||
+ | if .%1==. goto SYNTAX | ||
+ | if .%2==. goto SYNTAX | ||
+ | |||
+ | cls | ||
+ | |||
+ | :: CONFIGURACION | ||
+ | :: Hay que usar el path *absoluto* para el cipar | ||
+ | set CIPAR=D:\opac\opac.cip | ||
+ | if not exist %CIPAR% goto ERROR_CIPAR | ||
+ | echo Archivo cipar encontrado. | ||
+ | |||
+ | :: Verificamos la existencia de la base de origen | ||
+ | if not exist %1.mst goto ERROR_DB_ORIGIN | ||
+ | if not exist %1.xrf goto ERROR_DB_ORIGIN | ||
+ | echo Base de origen encontrada. | ||
+ | |||
+ | |||
+ | :: Creamos el directorio destino, si es necesario | ||
+ | :: ATENCION: en Win2K a veces genera un error, sin razon aparente. Hay que reintentar, | ||
+ | :: o bien hacer un cd al directorio %2 seguido de un cd.. para regresar | ||
+ | if not exist %2\nul mkdir %2 | ||
+ | if errorlevel 1 goto ERROR_MKDIR | ||
+ | echo Directorio %2 creado. | ||
+ | |||
+ | if not exist %2\tmp\nul mkdir %2\tmp | ||
+ | if errorlevel 1 goto ERROR_MKDIR_TMP | ||
+ | echo Directorio %2\tmp creado. | ||
+ | |||
+ | |||
+ | :BIBLIO_DATABASE_1 | ||
+ | |||
+ | echo. | ||
+ | echo Creamos una copia (texto) de la base bibliografica. | ||
+ | set MAXCOUNT=30000 | ||
+ | if not %3.==. set MAXCOUNT=%3 | ||
+ | i2id %1 count=%MAXCOUNT% tell=1000 > %2\tmp\biblio1.id | ||
+ | |||
+ | :: A partir de ahora, trabajamos en el directorio destino | ||
+ | cd %2 | ||
+ | ::if errorlevel 1 goto ERROR_CHANGE_DIR | ||
+ | echo. | ||
+ | echo Directorio de trabajo: %2 | ||
+ | |||
+ | |||
+ | :: Lista de tags de los cuales vamos a extraer los encabezamientos | ||
+ | set SUBJ_TAGS=v600v610v611v630v650v651v653v655v656 | ||
+ | set NAME_TAGS=v100v110v111v700v710v711 | ||
+ | |||
+ | :: Valores del 2do indicador en campos 6xx que no deseamos considerar | ||
+ | set IGNORE_SUBJ_HEADINGS=#6 | ||
+ | |||
+ | echo. | ||
+ | echo Intentamos normalizar la puntuacion final, filtramos encabezamientos | ||
+ | echo tematicos, y asignamos un numero (provisorio) a cada campo | ||
+ | echo de encabezamientos en el subcampo ^9. | ||
+ | mx "seq=tmp\biblio1.id¦" lw=3000 "pft=@HEAD.PFT" now tell=1000 > tmp\biblio2.id | ||
+ | |||
+ | |||
+ | :SUBJ_DATABASE | ||
+ | |||
+ | echo. | ||
+ | echo ----------------------------------------------------- | ||
+ | echo Base de encabezamientos tematicos | ||
+ | echo ----------------------------------------------------- | ||
+ | |||
+ | echo Creamos el listado de encabezamientos tematicos. | ||
+ | mx "seq=tmp\biblio2.id¦" lw=1000 "pft=if getenv('SUBJ_TAGS') : v1*1.4 then @SUBJ.PFT fi" now tell=1000 > tmp\subj1.id | ||
+ | |||
+ | echo. | ||
+ | echo Convertimos el listado en una base (desordenada y con duplicados). | ||
+ | id2i tmp\subj1.id create/app=tmp\subj1 tell=1000 | ||
+ | |||
+ | echo. | ||
+ | echo Regularizamos la puntuacion final de los encabezamientos generados. | ||
+ | mx tmp\subj1 "proc='d2a2¦',v1,'¦'" "proc='d1a1¦',@REGPUNT.PFT,'¦'" proc='d2' copy=tmp\subj1 now -all tell=1000 | ||
+ | |||
+ | echo. | ||
+ | echo Almacenamos en un campo auxiliar la clave de ordenacion. | ||
+ | mx tmp\subj1 uctab=UC-ANSI.TAB "proc='d99a99¦',@HEADSORT.PFT,'¦'" copy=tmp\subj1 now -all tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Ordenamos la base de encabezamientos tematicos. | ||
+ | msrt tmp\subj1 100 v99 tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Generamos la tabla para mapear los numeros de encabezamientos. | ||
+ | mx tmp\subj1 "pft=if s(v1) <> ref(mfn-1,v1) then putenv('HEADING_CODE='v9) fi, v9,'|',getenv('HEADING_CODE')/" now -all tell=1000 > tmp\subjcode.seq | ||
+ | |||
+ | echo. | ||
+ | echo Eliminamos los encabezamientos duplicados. | ||
+ | mx tmp\subj1 lw=1000 "pft=@ELIMDUP2.PFT" now tell=1000 > tmp\subj.id | ||
+ | |||
+ | echo. | ||
+ | echo Creamos la base de encabezamientos tematicos (ordenada y sin duplicados). | ||
+ | id2i tmp\subj.id create/app=subj tell=1000 | ||
+ | |||
+ | |||
+ | :NAME_DATABASE | ||
+ | |||
+ | echo. | ||
+ | echo ----------------------------------------------------- | ||
+ | echo Base de encabezamientos de nombres | ||
+ | echo ----------------------------------------------------- | ||
+ | |||
+ | echo Creamos el listado de encabezamientos de nombres | ||
+ | mx "seq=tmp\biblio2.id¦" lw=1000 "pft=if getenv('NAME_TAGS') : v1*1.4 then @NAME.PFT fi" now tell=1000 > tmp\name1.id | ||
+ | |||
+ | echo. | ||
+ | echo Convertimos el listado en una base (desordenada y con duplicados). | ||
+ | id2i tmp\name1.id create/app=tmp\name1 tell=1000 | ||
+ | |||
+ | echo. | ||
+ | echo Regularizamos la puntuacion final de los encabezamientos generados. | ||
+ | mx tmp\name1 "proc='d2a2¦',v1,'¦'" "proc='d1a1¦',@REGPUNT.PFT,'¦'" proc='d2' copy=tmp\name1 now -all tell=1000 | ||
+ | |||
+ | echo. | ||
+ | echo Almacenamos en un campo auxiliar la clave de ordenacion. | ||
+ | mx tmp\name1 uctab=UC-ANSI.TAB "proc='d99a99¦',@HEADSORT.PFT,'¦'" copy=tmp\name1 now -all tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Ordenamos la base de encabezamientos de nombres. | ||
+ | msrt tmp\name1 100 v99 tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Generamos la tabla para mapear los numeros de encabezamientos. | ||
+ | mx tmp\name1 "pft=if s(v1) <> ref(mfn-1,v1) then putenv('HEADING_CODE='v9) fi, v9,'|',getenv('HEADING_CODE')/" now -all tell=1000 > tmp\namecode.seq | ||
+ | |||
+ | echo. | ||
+ | echo Eliminamos los encabezamientos duplicados. | ||
+ | mx tmp\name1 lw=1000 "pft=@ELIMDUP2.PFT" now tell=1000 > tmp\name.id | ||
+ | |||
+ | echo. | ||
+ | echo Creamos base de encabezamientos de nombres (ordenada y sin duplicados). | ||
+ | id2i tmp\name.id create/app=name tell=1000 | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------------------- | ||
+ | echo Reasignamos numeros a los encabezamientos en los registros | ||
+ | echo bibliograficos (subcampo 9). | ||
+ | :: ----------------------------------------------------------------- | ||
+ | mx seq=tmp\subjcode.seq create=tmp\subjcode now -all | ||
+ | mx tmp\subjcode "fst=1 0 v1" fullinv=tmp\subjcode | ||
+ | mx seq=tmp\namecode.seq create=tmp\namecode now -all | ||
+ | mx tmp\namecode "fst=1 0 v1" fullinv=tmp\namecode | ||
+ | |||
+ | mx "seq=tmp\biblio2.id¦" lw=1000 "pft=@RECODE.PFT" now tell=1000 > tmp\biblio3.id | ||
+ | |||
+ | |||
+ | |||
+ | :TITLE_DATABASE | ||
+ | |||
+ | echo. | ||
+ | echo ----------------------------------------------------- | ||
+ | echo Base de titulos | ||
+ | echo ----------------------------------------------------- | ||
+ | |||
+ | :: Lista de campos que se incluyen en la base TITLE. ATENCION: completar/revisar | ||
+ | ::set TITLE_TAGS=v130~v245~v246~v700~v730~v740~v765~v773 | ||
+ | set TITLE_TAGS=v130~v240~v245~v246~v730~v740~v765~v773 | ||
+ | |||
+ | echo Creamos listado de titulos. | ||
+ | mx "seq=tmp\biblio3.id¦" lw=1000 "pft=if getenv('TITLE_TAGS') : v1*1.4 then ,@TITLE.PFT, fi" now tell=1000 > tmp\title1.id | ||
+ | |||
+ | echo. | ||
+ | echo Convertimos el listado en una base (desordenada y con duplicados). | ||
+ | id2i tmp\title1.id create/app=tmp\title1 tell=1000 | ||
+ | |||
+ | echo. | ||
+ | echo Almacenamos en un campo auxiliar la clave de ordenacion de titulos. | ||
+ | mx tmp\title1 uctab=UC-ANSI.TAB "proc='d99a99¦',@HEADSORT.PFT,'¦'" copy=tmp\title1 now -all tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Ordenamos la base de titulos. | ||
+ | msrt tmp\title1 100 v99 tell=5000 | ||
+ | |||
+ | echo. | ||
+ | echo Eliminamos los titulos duplicados. | ||
+ | mx tmp\title1 lw=1000 "pft=@ELIMDUP2.PFT" now tell=1000 > tmp\title.id | ||
+ | |||
+ | echo. | ||
+ | echo Creamos la base de titulos (ordenada y sin duplicados). | ||
+ | id2i tmp\title.id create/app=title tell=1000 | ||
+ | |||
+ | |||
+ | :BIBLIO_DATABASE_2 | ||
+ | |||
+ | echo. | ||
+ | :: --------------------------------------------- | ||
+ | echo Recreamos la base bibliografica. | ||
+ | :: --------------------------------------------- | ||
+ | id2i tmp\biblio3.id create=biblio tell=1000 | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: --------------------------------------------- | ||
+ | echo Ordenamos la base bibliografica. | ||
+ | :: --------------------------------------------- | ||
+ | msrt biblio 100 @LOCATION_SORT.PFT tell=5000 | ||
+ | |||
+ | |||
+ | |||
+ | :FULLINV | ||
+ | |||
+ | :: ------------------------------------------------------------------- | ||
+ | :: Generacion de archivos invertidos. | ||
+ | :: ATENCION: AC-ANSI.TAB envia los numeros al diccionario. | ||
+ | :: ------------------------------------------------------------------- | ||
+ | |||
+ | echo. | ||
+ | echo --------------------------------------------- | ||
+ | echo Archivo invertido - Base de temas ... | ||
+ | echo --------------------------------------------- | ||
+ | mx subj fst=@HEADINGS.FST actab=AC-ANSI.TAB uctab=UC-ANSI.TAB fullinv=subj tell=2000 | ||
+ | |||
+ | echo. | ||
+ | echo --------------------------------------------- | ||
+ | echo Archivo invertido - Base de nombres ... | ||
+ | echo --------------------------------------------- | ||
+ | mx name fst=@HEADINGS.FST actab=AC-ANSI.TAB uctab=UC-ANSI.TAB fullinv=name tell=2000 | ||
+ | |||
+ | echo. | ||
+ | echo --------------------------------------------- | ||
+ | echo Archivo invertido - Base de titulos ... | ||
+ | echo --------------------------------------------- | ||
+ | mx title "fst=2 0 '~',@HEADSORT.PFT" actab=AC-ANSI.TAB uctab=UC-ANSI.TAB fullinv=title tell=2000 | ||
+ | |||
+ | echo. | ||
+ | echo --------------------------------------------- | ||
+ | echo Archivo invertido - Base bibliografica ... | ||
+ | echo --------------------------------------------- | ||
+ | mx biblio gizmo=DICTGIZ fst=@BIBLIO.FST actab=AC-ANSI.TAB uctab=UC-ANSI.TAB stw=@BIBLIO.STW fullinv=biblio tell=2000 | ||
+ | |||
+ | |||
+ | |||
+ | :POSTINGS | ||
+ | |||
+ | echo. | ||
+ | :: -------------------------------------------------------- | ||
+ | echo Asignamos postings a los terminos del indice de temas. | ||
+ | :: -------------------------------------------------------- | ||
+ | mx subj "proc='d11a11#',f(npost(['BIBLIO']'_SUBJ_'v9),1,0),'#'" copy=subj now -all tell=1000 | ||
+ | |||
+ | echo. | ||
+ | :: ---------------------------------------------------------- | ||
+ | echo Asignamos postings a los terminos del indice de nombres. | ||
+ | :: ---------------------------------------------------------- | ||
+ | mx name "proc='d11a11#',f(npost(['BIBLIO']'_NAME_'v9),1,0),'#'" copy=name now -all tell=1000 | ||
+ | |||
+ | |||
+ | |||
+ | :AGREP_DICTIONARIES | ||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Generamos diccionarios para AGREP. | ||
+ | :: Solo nos interesan claves asociadas a ciertos tags. | ||
+ | :: /100 restringe la cantidad de postings (de lo contrario, da error) | ||
+ | :: ATENCION: los sufijos NAME, SUBJ, TITLE van en mayusculas o minusculas | ||
+ | :: en base a los valores que tome el parametro CGI correspondiente. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo - subj | ||
+ | :: Para bibima usamos la base MSC; para el resto, la base SUBJ | ||
+ | if %2==bibima mx dict=\httpd\bases\catalis_pack\opacmarc\msc2000\msc "pft=v1^*/" k1=a k2=zz now > dictSUBJ.txt | ||
+ | if not %2==bibima mx dict=subj "pft=v1^*/" k1=a k2=zz now > dictSUBJ.txt | ||
+ | |||
+ | echo - name | ||
+ | mx dict=name "pft=v1^*/" k1=a k2=zz now > dictNAME.txt | ||
+ | |||
+ | echo - title | ||
+ | ::mx dict=biblio,1,2/100 "pft=if v2^t:'204' then v1^*/ fi" k1=a now > dicttitle.txt | ||
+ | ifkeys biblio +tags from=a to=zzzz > tmp\titlekeys.txt | ||
+ | mx seq=tmp\titlekeys.txt "pft=if v2:'204' then v3/ fi" now > dictTITLE.txt | ||
+ | |||
+ | |||
+ | :LANG | ||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Lista de codigos de idioma. | ||
+ | :: TO-DO: revisar (OEM2ANSI?) | ||
+ | :: ----------------------------------------------------- | ||
+ | mx seq=LANG.TXT create=LANG now -all | ||
+ | mx LANG fst=@LANG.FST fullinv=LANG | ||
+ | mx dict=biblio k1=-LANG=A k2=-LANG=ZZZ "pft=v1^**6.3,'|',v1^t/" now > langcode.txt | ||
+ | mx seq=langcode.txt create=langcode now -all | ||
+ | msrt langcode 30 "mpu,ref(['LANG']l(['LANG']v1.3),v3)" | ||
+ | mx langcode "pft=v1,'^p',v2,'^',/" now -all > langcode.txt | ||
+ | ::mx LANG gizmo=OEM2ANSI copy=LANG now -all | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Lista de codigos de bibliotecas. | ||
+ | :: ----------------------------------------------------- | ||
+ | mx dict=biblio k1=-BIB=A k2=-BIB=ZZZ "pft=v1^**5,'^p',v1^t/" now > bibcode.txt | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Fechas extremas. | ||
+ | :: ----------------------------------------------------- | ||
+ | mx dict=biblio "k1=-F=1" "k2=-F=2999" "pft=v1^**3/" now > tmp\dates1.txt | ||
+ | mx tmp to=1 "proc='a1~',replace(s(cat('tmp\dates1.txt')),s(#),'&'),'~'" "pft=v1.4,'-',s(right(v1,5)).4" > dates.txt | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Total de registros disponibles. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo. > bases.par | ||
+ | mx biblio count=1 "pft=proc('a5001~',f(maxmfn-1,1,0),'~'),'BIBLIOGRAPHIC_TOTAL=',left(v5001,size(v5001)-3),if size(v5001) > 3 then '.' fi,right(v5001,3)/" >> bases.par | ||
+ | mx name count=1 "pft=proc('a5001~',f(maxmfn-1,1,0),'~'),'NAME_TOTAL=',left(v5001,size(v5001)-3),if size(v5001) > 3 then '.' fi,right(v5001,3)/" >> bases.par | ||
+ | mx subj count=1 "pft=proc('a5001~',f(maxmfn-1,1,0),'~'),'SUBJ_TOTAL=',left(v5001,size(v5001)-3),if size(v5001) > 3 then '.' fi,right(v5001,3)/" >> bases.par | ||
+ | mx title count=1 "pft=proc('a5001~',f(maxmfn-1,1,0),'~'),'TITLE_TOTAL=',left(v5001,size(v5001)-3),if size(v5001) > 3 then '.' fi,right(v5001,3)/" >> bases.par | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------- | ||
+ | echo Fecha de esta actualizacion. | ||
+ | :: ----------------------------------------------------- | ||
+ | mx tmp "pft=s(date)*6.2'/'s(date)*4.2'/'s(date).4" to=1 > updated.txt | ||
+ | |||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------------- | ||
+ | ::echo Eliminamos archivos auxiliares generados por este script | ||
+ | :: ----------------------------------------------------------- | ||
+ | ::del tmp\*.* 2>nul | ||
+ | |||
+ | del *.ln* 2>nul | ||
+ | del *.lk* 2>nul | ||
+ | |||
+ | |||
+ | if not %CONVERT_LINUX% == 1 goto NO_LINUX | ||
+ | |||
+ | echo. | ||
+ | :: ----------------------------------------------------------- | ||
+ | echo Conversion de bases de datos a Linux. | ||
+ | :: ----------------------------------------------------------- | ||
+ | if not exist linux\nul mkdir linux | ||
+ | ::if errorlevel 1 goto ERROR_MKDIR_LINUX | ||
+ | echo Directorio %2\linux creado. | ||
+ | |||
+ | echo - biblio | ||
+ | crunchmf biblio linux\biblio | ||
+ | crunchif biblio linux\biblio | ||
+ | |||
+ | echo - name | ||
+ | crunchmf name linux\name | ||
+ | crunchif name linux\name | ||
+ | |||
+ | echo - subj | ||
+ | crunchmf subj linux\subj | ||
+ | crunchif subj linux\subj | ||
+ | |||
+ | echo - title | ||
+ | crunchmf title linux\title | ||
+ | crunchif title linux\title | ||
+ | |||
+ | |||
+ | :NO_LINUX | ||
+ | |||
+ | echo. | ||
+ | :: -------------------------------------------------------- | ||
+ | echo Eliminamos archivos temporales del OPAC. | ||
+ | :: ATENCION: esto en realidad debe hacerse en el *servidor* | ||
+ | :: -------------------------------------------------------- | ||
+ | del \httpd\cgi-bin\opacmarc\temp\*.$$$ 2>nul | ||
+ | |||
+ | |||
+ | echo. | ||
+ | echo --------------------------------------------- | ||
+ | echo Ejecucion de %0.bat finalizada. | ||
+ | echo --------------------------------------------- | ||
+ | echo. | ||
+ | echo. | ||
+ | |||
+ | |||
+ | :: ATENCION: 'cd..' podria no ser lo que queremos siempre | ||
+ | cd .. | ||
+ | goto END | ||
+ | |||
+ | |||
+ | |||
+ | :SYNTAX | ||
+ | type %0.syn | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | |||
+ | :ERROR_CIPAR | ||
+ | echo. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo *** ATENCION *** | ||
+ | echo No se ha encontrado el archivo cipar: %CIPAR% | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | :ERROR_DB_ORIGIN | ||
+ | echo. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo *** ATENCION *** | ||
+ | echo No se ha encontrado la base de datos de origen, | ||
+ | echo %1 | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | |||
+ | :ERROR_MKDIR | ||
+ | echo. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo *** ATENCION *** | ||
+ | echo No se pudo crear el directorio %2 | ||
+ | echo Bajo Windows 2000 a veces se genera este error, sin razon | ||
+ | echo aparente; en tal caso, reintente. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | :ERROR_MKDIR_TMP | ||
+ | echo. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo *** ATENCION *** | ||
+ | echo No se pudo crear el directorio %2\tmp | ||
+ | echo Bajo Windows 2000 a veces se genera este error, sin razon | ||
+ | echo aparente; en tal caso, reintente. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | :ERROR_CHANGE_DIR | ||
+ | echo. | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo *** ATENCION *** | ||
+ | echo No se pudo cambiar al directorio %2 | ||
+ | echo ------------------------------------------------------------------ | ||
+ | echo. | ||
+ | goto END | ||
+ | |||
+ | |||
+ | :END | ||
+ | set CIPAR= | ||
+ | </code> | ||
+ | |||
+ | |||
+ | {{tag>opacmarc admin}} |