lunes, 23 de noviembre de 2015

Usuario Administrator bloqueado. Cambio de contraseña

A veces nos encontramos que el usuario Administrador de la instancia java está bloqueado y no nos acordamos de la contraseña. SAP tiene un método para activar a través del configtool un usuario de emergencia que nos permitirá desbloquear el usuario administrador y volver a cambiarle la contraseña. (parametros ume.superadmin.activated y ume.superadmin.password) Pero para esto, será necesario reiniciar la instancia java. 

Si no podemos esperar al reinicio de la instancia y conocemos la contraseña Administrator de otro sistema java podemos copiar el valor de VAL y actualizarlo en el sistema al que no tenemos acceso. 
Para sacar el valor de VAL lanzaremos la siguiente sentencia en el sistema origen. Esta contraseña esta codificada en SHA1


select pid, val from  <SCHEMABBDD>.UME_STRINGS where ATTR='j_password' and PID='UACC.PRIVATE_DATASOURCE.un:Administrator;

Ahora nos iremos al sistema destino y actualizaremos la contraseña y desbloquearemos el usuario.

update  SAPSR3DB.UME_STRINGS set VAL='{SSHA}4+fH<contraseña_codificada>M=' where ATTR='j_password' and PID='UACC.PRIVATE_DATASOURCE.un:Administrator';
update  SAPSR3DB.UME_STRINGS set VAL='false' where ATTR='islocked' and PID='UACC.PRIVATE_DATASOURCE.un:Administrator';
update  SAPSR3DB.UME_STRINGS set VAL=0 where ATTR='failedlogonattempts' and PID='UACC.PRIVATE_DATASOURCE.un:Administrator';

commit;  

Esta claro que esto solo se debe usar en casos muy concretos y necesarios, cuando no podamos acceder al sistema y sea urgente solucionar un problema sin usar el método estandar y correcto que SAP propone para esto.
Leer más...

domingo, 22 de noviembre de 2015

BPC NW: Backup/restore de Appset

Para hacer un backup/restores pudiendo llevar el appset de un entorno a otro, SAP propociona la transacción UJBR desde la cual haremos previamente el backup. Lo recomendable es hacerlo en fondo y como ruta de descarga del fichero deberemos poner algún directorio del servidor.


Para el restore, nos llevaremos el fichero de backup al sistema donde queremos hacer el restore y lanzaremos la UJBR para comenzar el restore. Pero previamente, debermos borrar el APPSET porque sino nos dará un error indicandonos que ya existe.

1739243 - "AppSet ID XXXX already exists, delete AppSet and try again" error when restoring using UJBR

Para borrarlos lanzaremos el report UJS_ACTIVATE_CONTENT desde la SE38 con la opción "clean".


Despues lanzaremos UJS_ACTIVATE_CONTENT con el ID del appset como parámetro, todas las tablas que aparezcan con valores mayor que cero, tendremos borrarlas desde la transaccion SE16.



Una vez este todo borrado, lanzaremos el restore del APPSET, acordarse de marcar el flag para que mantenga los nombres técnicos.



Leer más...

jueves, 5 de noviembre de 2015

Status activo en cadena de procesos con cadena remota.

Cuando tienes una cadena de procesos de BW, en la cual haces la llamada a una cadena de proceos de un sistema remoto, para que te devuelva cuando ha finalizado debes configurar bien la RFC de llamada remoto al sistema origen. Si no, se quedará la cadena origen como si no hubiese finalizado, puesto que la cadena remota no sabrá donde devolver el estado.

DESTINO = RFC donde se ejecutará la cadena.
DESTINO LLAMADA REMOTA = RFC donde debe devolver el estado. Será el mismo que hace la llamada.



La funcion con la que hace la devolucion del estado de la cadena es RSPC_PROCESS_FINISH y en la tabla donde podremos ver el estado de cada paso de la cadena es la RSPCPROCESSLOG.
Leer más...

martes, 15 de septiembre de 2015

Como forzar logon a un server concreto del portal de SAP

Hay veces, nos encontramos problemas en el portal que afectan a una instancia o incluso a un nodo concreto. Para poder comprobar que nodo es el que esta fallando podremos acceder mediante la siguiente url, indicando los ID de los distintos server.

http[s]://<FQDN>[:Port]/irj/portal;saplb_*=(J2EE<dispatcher_ID>)<server_ID>

Lo único a tener en cuenta es que para hacer pruebas cambiando de nodo, deberemos borrar las cookies de nuestro navegador.

Para saber en que nodo estamos cuando accedemos desde el browser, pondremos en la url javascript:document.cookie y nos devolverá el id del server desde el que se ejecuta.
Leer más...

miércoles, 29 de julio de 2015

SAP MMC: Acceso web

Para poder acceder a la SAP Management Console, lo podremos hacer directamente accediendo a la siguiente url, siendo nr el número de instancia.
 
http://hostname:5nr13
https://hotname:5nr14

Esto abrirá una aplicación java que mostrandonos la consola de gestión de SAP



Desde aquí podremos ver el estado del sistema, parar, arrancarlo, etc lo único que tenemos que tener en cuenta es que este corriendo el sapstartsrv de cada SID.
Leer más...

martes, 28 de julio de 2015

BPC 10.0 Como ver usuarios conectados en el sistema

Si quieres ver los usuarios conectados en el sistema y a que appset, o como se esta conectando (office, web, datamanager, ...) lo podremos ver consultando la tabla UJA_LOGGED_ON la cual nos dará información del usuario y la ip desde la que se conecto.



Lo único a tener en cuenta, es que solo nos mostrará una entrada por día y de la última conexión que tuvo el usuario. Si queremos información más detallada tendremos que activar las auditorias desde la consola de Administración, en la pestaña de Audit
Leer más...

domingo, 26 de julio de 2015

SOST: Control borrado de correo y recuperación de los mismos

Si queremos saber si un correo ha sido borrado del sistema y en que estado estaba antes de borrarlo, lo podremos ver desde la propia SOST. 
Arriba en el menu, Pasar a - Ordenes de envio borradas y aquí filtraremos por la fecha.


Si queremos recuperar alguno de los correos borrados para volver a enviarlo solo seleccionaremos el/los correo/s y pulsaremos sobre RESTABLECER.


De esta forma podremos sacar de nuevo correos borrados por error. Parece algo muy báscio pero que descubrí hace poco y me pareció interesante compartir.
Leer más...

domingo, 10 de mayo de 2015

Cambio de kernel al probar error: "/usr/lib/hpux64/dld.so: Unsatisfied data symbol"

Cuando estamos haciendo un cambio de kernel, normalmente copiamos el kernel antiguo para preparar el nuevo en otro directorio y descomprimir el nuevo kernel en esa ruta.
Al ir a revisar la nueva versión de los disp+work (disp+work -v) en el nuevo directorio, nos aparece el siguiente error


esto es debido a que la variable de entorno SHLIB_PATH apunta todavia al kernel antiguo, si quieres probar que el nuevo kernel esta ok, antes de cambiarlo definitivamente, deberás cambiar la variable de entorno en la sesión que tengas abierta para que apunte al nuevo kernel y podrás ver la nueva versión del nuevo kernel.
Leer más...

domingo, 19 de abril de 2015

Como sacar el listado de aplicaciones en un portal

Hoy os contaré como sacar el listado de las aplicaciones que están desplegadas en un portal, y cuales estan ejecutándose o no. Para ello utilizaremos el comando telnet.




telnet nombre_servidor 50<xx>08

Nos logamos con un usuario administradory ejecutaremos los siguientes comandos.

lsc (con el que sacaremos todos los server que tenemos en el portal)
jump n (para saltar al server que queramos, primero lo haremos al dispatcher y si volvemos a poner jump n lo haremos al server)
add deploy
list_app (sacará el listado de aplicaciones, el server en el que corren y el estado de las mismas)




Si queremos filtrar podremos hacerlo con:
get_status <-a applicationName> list_app | grep <applicationName>
Leer más...

miércoles, 25 de marzo de 2015

Nombres Lógicos en OPENHUB

Cuando tenemos varias instancias y queremos que el openhub vaya a una ruta concreta, por ejemplo de un recurso compartido, tenemos la opción de crear un Nombre de fichero lógico


Para defnir el nombre del fichero lógico, lo haremos desde el punto de parametrización de la SPRO.


Crearemos primero la vía de acceso lógica, como se ve se puede utilizar variables que nos permitirán que la definición del openhub sea dinámica según se vaya pasando por los distintos entornos.


Una vez creado el acceso lógico, definiremos el fichero lógico, que será el que se ponga en la definción del openhub.


Igualmente se podrá poner variables para que los nombres sean dinámicos.


Leer más...

jueves, 19 de febrero de 2015

Error Open Hub cuando tenemos varias instancias.

Cuando definimos un open hub podremos hacerlo de forma local o servidor. En local puedes seleccionar la ruta concreta donde descargarlo, pero no se puede utilizar en cadenas de proceso puesto que tira componentes del cliente de SAP, y desde el servidor si te deja pero obliga a descargarlo siempre en el DIR_HOME de la AL11 (fichero) o si eliges nombre lógico, se podrá cambiar la ruta.
El problema que tenemos con la opción de servidor, es que puede ser que tengamos varias instancias y los directorios del DIR_HOME sean disitintos. Esto podrá dar errores cuando no acceda al servidor definido en el open hub. El error que muestra es RSBK241.


Para solucionar esto, nos iremos al DTP que utilice el open hub en cuestión, y le indicaremos el mismo servidor definido en el open hub. 



Esto se hace posicionandonos en el DTP y luego  Pasar a -- Param. gestor proceso fondo.


Aqui seleccionaremos el sevidor por el que queremos que se lance, obligando de esta forma a que utilice el mismo servidor y directorio que en el open hub.


Leer más...

lunes, 16 de febrero de 2015

Como activar la auditoría del KM

Si queremos saber el número de usuarios que lee, modifica,.. documentos de nuestro KM, lo que tenemos que hacer es activar el Activity Reporting Services. Para ello nos iremos a la System Administration - KM - Content Management, y seleccionaremos Global services. 
Pulsando sobre opciones avanzadas, nos aparecerá Activity Reporting Service (Show advance options)



En esta ventana, marcaremos el flag de Active, para activar la auditoria, a parte si seleccionamos el flaga de Positive List lo que haremos será auditar solo los repositorios/directorios que aparecen en el parámetro RID List (separados por una coma). Los siguientes parámetros especificarán el tipo de actividad que queremos auditar.
Esto lo que hará sera dejarnos unos ficheros con extension .open en la ruta que le indiquemos en el Directory Name, si no se indica nada lo dejará en  <unidad>:\usr\sap\SID\JC00\j2ee\cluster\server0\activity_trace_default_directory_name en caso de especificar valor, podra ser con ruta estática (esta bien para unificar si tenemos varios server) o relativa a partir del ...cluster\servern de cada server. 
El funcionamiento es el siguiente, almacena la información en cache y según la va ocupando lo descarga a fichero con extension .open. Luego a la hora indicada en el parámetro Hour to close cierra todos los archivos unificandolo en uno o varios txt en función de lo que le pidamos que saque.

Leer más...

miércoles, 11 de febrero de 2015

Si tienes acceso a la SE37, puedes tener acceso a muchas cosas

Si tienes acceso a la SE37 en un sistema puedes ejecutar muchas cosas, si sabes manejarlo bien. Por ejemplo, si alguna vez os encontrais con la necesidad de ejecutar una transacción a la cual por equivocación no os han dado acceso, y no podeis esperar a visualizarla, podreis ejecutar la siguiente función: RS_HDSYS_CALL_TC_VARIANT, en el parámetro TCODE se inserta la transacción y en el parámetro AUTHORITY-CHECK borras la X.


Si la transaccion solo chequea la S_TCODE te dejará entrar, si tiene más AUTHORITY-CHECK te dará error de autorizacion.
Como siempre digo, esto solo debemos usarlo con conocimiento de lo que hacemos, y sabiendo que al final por un lado o por otro siempre se puede averiguar que usuario ejecuto una transacción u otra, vamos que se puede pillar facil al tramposo, jajaja. Otro día ya os contare más cosillas que se puede hacer teniendo la SE37, aunque ya tengo una entrada en la que os pongo bastantes cosillas.
Leer más...

viernes, 30 de enero de 2015

Como hacer debug de ventanas emergentes.

Cuando queremos debugear una ventana emergente se nos complica el tema, averiguando cual es la dynpro o trozo de código donde poner el breakpoint, pero es más sencillo de lo que creemos.
Simplemente crearemos un fichero txt en nuestro pc con el nombre: Debugger.txt

Dentro pondremos las siguientes líneas:

[FUNCTION]
Command=/H
Title=Debugger
Type=SystemCommand

Y entrar a debugear será tan sencillo como arrastrar el fichero sobre la ventana a debugear, activando el modo debug a partir de ese momento.



Como veis sencillo y super útil para encontrar cualquier problema.
Leer más...

miércoles, 7 de enero de 2015

Problemas al publicar un catálogo CCM 200_640

Algo antiguo por el tipo de catálogo, pero bueno que si yo me lo encontré lo mismo a alguno le viene bien... 
Al intentar publicar un catalogo en SAP SRM con CCM 200_640 se queda enganchado con el siguiente error:
"Publication  of the catalog is already in process"
Para ver el status del catalogo nos iremos a la tabla /CCM/D_UPD_STATE y filtraremos por el catalog_id del catalogo que nos esta dando problemas.
Si el status es 03 querrá decir que esta en ejecución  para cambiar ese estado, una vez asegurado que no hay ninguna publicación lanzada, ejecutaremos el siguiente report /CCM/CLEANUP_UPDATE_STATUS y seleccionaremos el catalog_id, el usuario y todos los datos necesarios para filtrar dicha entrada, ya que este report entre otras cosas borra la entrada de la tabla en cuestión.
La otra tabla es la /CCM/D_PUB_ST que deberemos mirar si el catalogo esta con status R, si lo estuviese solo tendremos que aplicar la nota 1092047 - Zreport to update status of catalog in /ccm/d_pub_st table y lanzar el ZREPORT que cambia dicho status.
Una vez hecho esto, volveremos a publicar el catalogo, desde la bbpstart --> edit catalog --> ... y chequearemos el log para ver que todo es correcto.
Leer más...