martes, 9 de febrero de 2021

Error en la replica HANA. Error conexión 4xx002 y 3xx01

Al reiniciar el sistema, se observa como la replica se queda en estado ERROR con Log shipping timeout. 

Revisando los logs se observa que el nodo de secundario no puede conectarse con el puerto 4xx002 o mensajes de exception no.2110017 o SO_ERROR connection refused rc=111, y en el principal muestra un error que el nameserver no responde en el puerto 3xx01.

Existen muchas notas al respecto, que si el puerto está en uso, revisar parametros de red, ... que si buscais en la sapnet os será facil de encontrar. En nuestro caso, eso no resolvio el problema, el error venia por el parámetro enable_ssl del apartado system_replicaction_comunication el cual pusimos a off.

 Al reiniciar la base de datos en el principal el sistema volvio a ver ambos nodos y la replica se activo sin problemas.

Leer más...

miércoles, 3 de febrero de 2021

Como ver los certificados que tienes caducados

 Si quieres ver que certificados tienes caducados, sin necesidad de entrar en la STRUST e ir viendo uno a uno los certifcados. Lo puedes hacer con este report SSF_ALERT_CERTEXPIRE.

Ademas te permite seleccionar un número de días para que te avise lo de los que van a caducar antes de ese periodo, por lo que podrás conocer con el tiempo que le marques los que te van a exprirar a futuro. De esta forma, si planificas un job con este report, podrás adelantarte a tener un problema en el sistema. El report te permite avisar al sistema de distintas formas, por ejemplo enviando un correo al destintario que le indiques con la ultima opción.


Leer más...

martes, 26 de enero de 2021

SAML2: Como hacer para saltar la página de inicio de SAML2 y vaya directamte a login de IdP

 Cuando configuras el SAML2 por defecto, te redirecciona a la pagina de SAML2. 

Esto puede servirte si tienes varios IdP para poder seleccionar cual quieres. Pero si lo que quieres es que se redireccione directamente al login de AZURE, ADFS, ... es sencillo. Lanza la transacccion SAML2 y vete Local Povider, Service Provider Settings, Identity Provider Selection y en Selection Mode ponlo en "Automatic"


Con esto accederás directamente a la página de login de tu IdP. Por ejemplo desde el movil que la pagina de SAML2 no es responsive ya no te aparecerá y podrás acceder directamente al login, de forma más accesible.

Leer más...

jueves, 23 de agosto de 2018

RFC Remote logon no funciona - Destino creado con saprouter

Muchas veces te encuentras con que tienen que crearte una RFC a la cual no tienes acceso directo a la máquina destino y debes pasar por una cadena de saprouter que pones en la definición de la RFC


Cuando haces eso, el remote logon no funcionará. SAP necesita que también tenga retorno del sistema destino al origen, que con saprouter de por medio no lo hará sin hacer los siguientes pasos que te cuento ahora.
Lo primero,  debes crearte una RFC en el sistema destino con el nombre SID@BACK@ siendo el SID el del sistema origen (que llama). La configuración será poniendo el nombre de la máquina en el host y en el gateway la cadena de vuelta que tendrás que hacer igualmente con saprouter y con el puerto del gateway de tu sistema origen.


A parte deberás configurar el parámetro rdisp/use_rfc_dest_lookup = ON (por defecto estará a OFF) para que pueda hacer lookup. 


Y ya estaría. Si necesitas más info, esta nota es la que contiene el detalle 555162 - Asynchronous RFCs with dialog via SAP router
Leer más...

lunes, 25 de junio de 2018

Como sacar APPs FIORI recomendadas cuando vamos a S/4HANA

Cuando vamos a dar el salto a S/4HANA nos interesa saber que aplicaciones fiori son las recomendadas para instalar e utilizar. Para ello SAP dispone de una herramienta desde  https://fioriappslibrary.hana.ondemand.com que nos hace dicho análisis.
Lo primero que necesitaremos será irnos a la ST03 y descargarnos en formato excel el listado de transacciones utilizardas en el rango que determinemos, lo normal es coger un mes completo.


De ese listado solo nos quedaremos con la columna de transacciones o report y guardándolo en formato csv.

Lo siguiente sera descargarnos la lista de componentes instalados en el sistema. Desde Sistema -> Status -> Component


Descargaremos la lista, quedándonos solo con las tres primeras columnas y guardándolo en formato csv.

Por último, si nuestro sistema es HANA grabaremos en formato csv el resultado de la siguiente query

select * from “_SYS_REPO” . “DELIVERY_UNITS” where vendor = ‘sap.com’ ;

Una vez, tengamos toda esta información nos iremos a https://fioriappslibrary.hana.ondemand.com y pulsaremos sobre "Get SAP Fiori App Recommendations"


Crearemos un nuevo análisis.


Seleccionaremos el profile, para ello subiremos el fichero que generamos con las transacciones.


En la siguiente pantalla seleccionaremos el producto y subiremos el fichero de componentes. En el caso de tener fiori y el backend en la misma máquina se subirá el mismo fichero en Front-end y Backend. Sino tendremos que generar dos ficheros por cada sistema para luego poder subirlo. Y por último si es un sistema HANA subiremos el resultado de la query y sino lo dejaremos en blanco.


Por último, le daremos un nombre al análisis y pulsaremos para que nos devuelva el listado de la aplicaciones fiori recomendadas.


El listado devuelto será muy útil para sacar las aplicaciones recomendadas en función del uso del sistema en el mes seleccionado en la descarga de ejecución.




Leer más...

miércoles, 25 de abril de 2018

Como meter certificado wildcard en SSL Server

Una vez tengamos el .pfx con el certificado wildcard, lo copiaremos en el servidor, por ejemplo en la ruta /usr/sap/SID/DVEBMGS06/sec/, este certificado solo lo utilizaremos para importar el certificado SSL.

Con el usuario sidadm configuraremos la variable de entorno SECUDIR y lanzaremos el comando necesario para la importación. Nos podrá pedir la password para abrirlo y luego otra por si queremos ponersela al certificado que importemos de SSL.

setenv SECUDIR /usr/sap/SID/DVEBMGS06/sec
sapgenpse import_p12 -p SAPSSLS.pse wilcard_certificado.pfx


Y ahora nos copiaremos el SAPSSLS.pse a nuestro PC y lo subiremos con la STRUST Menu PSE à Import, salvandolo después en el SSL Server (DEFAULT)


Le diremos que lo reemplace y ya tendremos el wildcard metido en el servidor.
Para que pille el certificado en la instancia concreta, le daremos a reemplazar el SSL server y le pondremos la misma cadena que el certificado firmado.


Si los certificados no son iguales, nos pondrá (Self-signed) 





Leer más...

jueves, 12 de abril de 2018

HANA: HDBSettings.sh recoverSys.py

Bufff, hace mucho, mucho que no escribía..., pero bueno, me he propuesto sacar tiempo para ir poniendo cosillas.
El otro día al hacer una actualización del HANA me dio un error curioso de persistencia, provocado parece por la existencia de softlink en el /hana/log. Al no poder operar con ellos, aunque tuviera permisos, cancelo la actualización dejando la base de datos sin posibilidad de arrancarla.
El caso es que me toco restaurar de un backup realizado previamente en disco. Aquí os dejo el comando (HDBSettings.sh recoverSys.py [<parameters>]) empleado para realizar la recuperación.

HDBSettings.sh recoverSys.py --password=contraseña --wait --command="RECOVER DATA USING FILE ('/hana/shared/SID/HDB00/backup/data/prefijo_del_backup') CLEAR LOG"

Otros ejemplos de restauración posibles serían:

HDBSettings.sh recoverSys.py –command=”RECOVER DATABASE UNTIL TIMESTAMP ‘2018-02-01 09:30:00′”
HDBSettings.sh recoverSys.py –command=”RECOVER DATABASE UNTIL TIMESTAMP ‘2018-02-01 09:30:00’ USING LOG PATH (‘/system/backup/SID/log’) USING BACKUP_ID 1588445415345 CHECK ACCESS USING FILE”

En la carpeta python_support ubicada en /usr/sap/SID/HDB00/exe/ están todos los script de python disponibles que se pueden utilizar, en otros post os comentaré alguno.


Leer más...

martes, 31 de mayo de 2016

SM50: Subir o bajar número de procesos.

A veces necesitamos ajustar los parámetros para poder recuperar recursos de la máquina o notamos que el sistema va lento y nos planteamos subir el número de work process.
Existen dos formas que nos pueden orientar en si subir o bajar el numero de procesos.
Desde la SM50, nos iremos al menu: Lista-CPU apareciendonos el total de tiempo consumido por cada WP, si vemos procesos con menos de 0:20, podremos plantearnos reducir el número de WP.


La otra opción será desde la AL12 -Statistics - Cursor Cache - All server esta pantalla nos permitirá ver el número de peticiones de cada uno de los procesos y en función de esos valores si tiene todos muchas peticiones plantearse el aumentar el número de WP o reducirlo.


Leer más...

lunes, 30 de mayo de 2016

Como ver quien ha pasado una orden (STMS)

Para ver cuando se ha transportado una orden en el sistema lo tenemos fácil, viendo el log de la misma desde la SE01.
Pero si lo que nos interesa es saber que ordenes se importaron en un intervalo de tiempo, nos iremos a la STMS, entramos dentro del sistema donde se paso la orden, y pulsamos sobre el icono de historial de import.



Con esto veremos las ordenes importadas. Si lo queremos es ver tambien quien importo la orden, lo que haremos será ir al menu Tratar - Visualizar más, apareciendo una nueva columna Usuario que nos indicará quien paso la orden.

Leer más...

miércoles, 6 de abril de 2016

Cambiar correo/usuarios de forma másiva

Para cambiar correos de forma másiva, existe una forma no estándar, puesto que la SU10 no lo permite. Para ello, nos iremos a la tabla USR21 y sacaremos con el ID del usuario el PERSNUMBER.  


Con este valor, accediendo a la tabla ADR6 y debugeando (SE16N) podremos modificar la dirección de correo de una forma rápida y masiva. Recordar que no es la forma estándar y que lo normal sería hacerlo usando la SU01.


Leer más...

martes, 5 de abril de 2016

ORACLE: Como ver el tamaño de los tablespaces

Para ver el tamaño de un tablespace podemos lanzar la siguiente SELECT

select df.tablespace_name "Tablespace",
totalusedspace "Used MB",
(df.totalspace - tu.totalusedspace) "Free MB",
df.totalspace "Total MB",
round(100 * ( (df.totalspace - tu.totalusedspace)/ df.totalspace))
"Pct. Free"
from
(select tablespace_name,
round(sum(bytes) / 1048576) TotalSpace
from dba_data_files 
group by tablespace_name) df,
(select round(sum(bytes)/(1024*1024)) totalusedspace, tablespace_name
from dba_segments 
group by tablespace_name) tu
where df.tablespace_name = tu.tablespace_name ;



Leer más...

miércoles, 30 de marzo de 2016

RSBDCOS0: report para acceder como terminal desde SAP

Aquí os dejo un report super interesante que permite ejecutar comandos como si estuviesemos en un terminal. Si vamos a algún sitio y no nos dan acceso a nivel de sistema operativo, con esto podremos acceder sin problemas... una pasada :p
SE38 --> RSBDCOS0


Leer más...

miércoles, 16 de marzo de 2016

ORA-1722 / ORA-0932 despues de hacer import en system copy

Tras realizar un copia homógena mediante el método de system copy de SAP vemos que no se puede logar en el sistema.
Al finalizar el proceso de import, el sistema muestra los siguientes errores ORA-1722 o ORA-0932 al intentar entrar en el mismo.
El problema es debido a que aunque el proceso finalizo bien, no ha sincronizado correctamente el diccionario con la base de datos. Nos logamos con el usuario sidadm y lanzamos el siguiente comando:

dipgntab -fprot dipgntabBWK.log -rwr40 -srctt DDNTT -srctf DDNTF -dsttt DDNTT -dsttf DDNTF 
Leer más...

martes, 9 de febrero de 2016

BW: Query designer no guarda historial de conexion

Al entrar en el query designer y pedir los datos de logon, si queremos que nos recuerde los datos de la última entrada tendremos que ir a Sistema y en la pestaña de ampliado, marcar la opción de entrada automática en el sistema.


Leer más...

sábado, 23 de enero de 2016

SM51: Para que sirve...

 

SM51: Nos permite ver el resumen de los servidores/instancias que componen nuestro sistema.

Detalles:



Primera columna, nos permitirá ver el nombre de los servidores, compuestos por SERVIDOR_C11_00, es decir el primera columna de un simple vistazo sabremos el servirdor, el SID del sistema y el numero de instancia. Segunda columna, nombre del servidor de esa instancia. Y Tercera columna, los tipos de workprocess que tiene cada instancia.

 Pulsando sobre esto y seleccionando primeramente la instancia, nos llevará a ver los procesos que la componene. Sería igual que ir al SM50. Hay que tener en cuenta que cada instancia tiene sus procesos. Otra forma de acceder será haciendo doble clic sobre la linea de la instancia. NOTA: Al hacer doble clic, nos llevará a la SM50 de la instancia y cualquier cosa que ejecutemos será como si estuvieramos en dicha instancia.

 Nos llevará a ver los usuarios conectados en dicha instancia. Desde la siguiente ventana podremos gestionar los usuarios. Será como ir a la SM04. 

 Nos permitirá ver el nivel de kernel de cada una de las instancia que tengamos instalado. Util para cuando se aplica un cambio de kernel, comprobar que el sistema lo actualizo correctamente.

 Seleccionando la instancia, nos logaremos sobre ella. Es igual que si hacemos doble clic sobre ella. Cualquier cosa que ejecutemos a partir de este punto, será como si lo hiceramos desde esa instancia.

 Nos llevará al log del sistema de cada instancia. Es como si fueramos a la SM21.

Menú:

Desde los menú podremos acceder a toda la información especificada arriba y a mucha más información, como curiosidad en la parte de monitores, podremos acceder al contenido de transacciones como la SMICM (Monitor ICM), SMGW (Monitor gateway), ST06 (Monitor SO), ...



Una forma rápida de ver los datos de conexión, puertos habilitados HTTP, HTTPS, ... será desde el menu Información -- Datos de logon. Esta información la podemos recuperar de transacciones como la SMICM, o con saber el número de la instancia podemos sacar los puertos del dipatcher 32xx, gateway 33xx o message server 36xx.

O ir a los directorios SAP de cada una de las instancias, como si lo hicieramos desde la AL11.

Leer más...

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...