martes, 7 de febrero de 2017

Error en el Landscape de SAP


Otro error con el que me encontré, fue inmediatamente después de que el servidor tuvo varias actualizaciones, el problema lo tuve en el Landscape.

Los sintomas pueden ser:

  1. Al iniciar sesión en SAP Business One 9.1 o versiones inferiores, se muestra el siguiente mensaje de error:
  2. "Hay un problema con el certificado de seguridad del servidor. El certificado de seguridad no proviene de un Autoridad certificadora. SAP Business One no puede conectarse al servidor. "
  3. "Al intentar instalar el servidor SAP Business One obtendrá el error" Autenticanción contra el servidor especificado. Error en el servidor de licencias. Compruebe su contraseña de usuario del sitio."
  4. La ventana "Elegir empresa" de SAP Business One está vacía.
  5. El sitio web SLD no está disponible y muestra un error como: Ssl_error_weak_server_ephemeral_dh_key
  6. Ha instalado recientemente actualizaciones de Windows y ya no puede conectarse a SAP Business One.
Causa:

Implementación de actualizaciones de Microsoft Windows.
Como ejemplo, las siguientes actualizaciones podrían estar causando los síntomas descritos:

Microsoft KB  |   Sistema (s) operativo (s) afectado (s)
KB3161608     |   Windows 7 SP1
KB3161606     |   Windows 8.1
KB3161608     |   Windows Server 2008 R2 SP1

Tenga en cuenta que Windows puede lanzar nuevas actualizaciones que causan problemas similares.

Solución:

La solución recomendada es actualizar a SAP Business One 9.2.
Como solución de corto plazo, para SAP Business One 9.1 solamente, puede probar lo siguiente:


  1. Haga una copia de seguridad del archivo server.xml (C: \ Archivos de programa (x86) \ SAP \ SAP Business One ServerTools \ System \ Landscape Directory \ tomcat \ conf).
  2. En Linux, el archivo server.xml se puede encontrar en la siguiente ubicación: / Usr / sap / SAPBusinessOne / Common / tomcat / conf
  3. Abra server.xml en <tomcat> \ conf
  4. Encuentre el elemento <Connector> en este xml.
  5. Cambie el valor del atributo sslEnabledProtocols a "TLSv1, TLSv1.1, TLSv1.2"
  6. Agregue un atributo nuevo ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA"
  7. Después de actualizar el archivo xml, reinicie el servicio SLD.
  8. Inicie sesión en SAP Business One o vuelva a intentar la instalación de SAP Business One Server.

Aquí dejo la muestra de como se ve el nodo después de su modificación, con esto dejaran de sufrir por cada actualización del server.

<Connector SSLEnabled="true" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA" clientAuth="false" keystoreFile="C:\Program Files (x86)\SAP\SAP Business One ServerTools\Common\sapjvm_6\jre\bin\keystore.p12" keystorePass="AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAiNe6T1ScRkqWMFc1wjLAqAQAAAAOAAAASgBEAFAAQQBQAEkAAAADZgAAwAAAABAAAAAVeOw03eqQURndH2Ki7NpgAAAAAASAAACgAAAAEAAAAIx3cn4oA1MQ/yhlI8WT4ykIAAAAw3r2o62PVk8UAAAAX/2asI/OiTkM427EPXlmG/Np2f4=" keystoreType="PKCS12" maxThreads="150" port="30010" protocol="org.apache.coyote.http11.SLDHttp11Protocol" scheme="https" secure="true" sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2,SSLv3,SSLv2Hello" sslProtocol="TLS"/>

Saludos!!.


Carpeta Temporal SM_OBS_DLL


Por fin vuelvo a publicar :D, esta vez para mostrarles como salir bien librados de este error que nos envía TaskCentre (En realidad no dice mucho, ¡que problema es cuando no nos dice que le duele!).

Response (MT):  <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"><env:Body><env:Fault><env:Code><env:Value>env:Receiver</env:Value><env:Subcode><env:Value>-8006</env:Value></env:Subcode></env:Code><env:Reason><env:Text xml:lang="en">Resource error</env:Text></env:Reason><env:Detail><Command>Login</Command></env:Detail></env:Fault></env:Body></env:Envelope>

Esto es por que al parecer existe un bug en esta versión lo cual se soluciona eliminando la carpeta temporal llamada: SM_OBS_DLL, la cual ubicamos en la siguiente ruta: C:\Windows\Temp.

Después de eliminarla, corran su proceso y sin problemas lo hará!.

sábado, 22 de octubre de 2016

Error de la solicitud con una respuesta vacía.


Hola!, después de estar mas de un mes sin haber publicado hoy me di el tiempo para hacerlo, la verdad el trabajo esta bastante intenso :D, y bueno en esta entrada publicare uno de los dos errores que me rompieron la cabeza a la hora de trabajar con TaskCentre - SAP B1.

El primer error me detenía la creación de documentos en SAP, justo en el paso del SAP Business One Connector, la tarea marcaba un error, generando esto caos con los usuarios que no veían sus documentos creados.

El error textualmente dice esto:

El cliente encontró el tipo de contenido de respuesta ", pero se esperaba "text/xml".
Error de la solicitud con una respuesta vacía.   en System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)     en System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)     en Tool.CommunicatorWS.CommunicatorWS.RequestPublicKey(String& keyGuid)     en Tool.ToolRuntime.LogonServer(CommunicatorWS DIS)     en Tool.ToolRuntime.SendRequest(XmlDocument requestXmlDoc, Boolean useMultipleTransactions, Boolean useOverrideXML)


En un inicio note que después de unas horas el problema se resolvía por si solo, en mas de una ocasión pedí el apoyo con el Cordinador de Soporte de TI para que reiniciara el servidor si urgía, pues esto solucionaba el problema, pero viendo a detalle después el error note que hacia referencia a un servicio de TaskCentre, por lo que deduje que era el Web Service con el que conectas TaskCentre a la base de datos de SAP:



Al correr el Web Service en el navegador marcaba el siguiente error:

Error de servidor en la aplicación '/'.
--------------------------------------------------------------------------------
Error en la comprobación de las puertas de memoria, la memoria libre (1124896768 bytes) es menor que el 5% de la memoria total. Como resultado, el servicio no estará disponible para las solicitudes entrantes. Para resolver esta situación, reduzcan la carga en el equipo o ajuste el valor deminFreeMemoryPercentageToActivateService en el elemento de configuración serviceHostingEnvironment

Por supuesto!, la bendita memoria estaba desbordándose, por lo que investigue acerca de como liberarla, sin necesidad de reiniciar el servidor y sin que los procesos actuales en ejecución no se vieran afectados, a continuación les dejo el Script:

FreeMem = Space (1000000000)

Donde el número representa los bytes a liberar, esta cantidad quedara a criterio de ustedes considerando que no afecte ni un proceso en su sistema operativo, por ultimo lo guardan con extensión .VBS y lo ejecutan.

Después de esto el Web Service de TaskCentre se mira así :).


Y listo!, espero les ayude.


martes, 16 de agosto de 2016

No se pudo tener acceso a la metabase de IIS - No Carga Proyecto Web



Desarrollando estaba y un cambio en el sistema necesitaba, la sorpresa fue que mi proyecto WEB en mi solución no cargaba!! xD, los proyectos de bibliotecas de clases sin ni un problema lo hacían, curiosamente este problema surgió después de Actualizar Office y SO Windows.





Al querer cargar el proyecto desde la solución me enviaba este error: No se pudo tener acceso a la metabase de IIS.

VS me enviaba este mensaje al abrirlo:


Buscando encontré que la solución era ejecutar a través del cmd el Framework necesario en mi caso bajo la siguiente ruta:

C:\Windows\Microsoft.NET\Framework\v4.0.30319 aspnet_regiis -i 

Con esto el sistema instalaba la versión que necesitaría, pero no fue así pues me envío el siguiente error:

" Utilidad de administración que instala y desinstala ASP.NET en el equipo local
Esta opción no es compatible con esta versión del sistema operativo. Los administradores deben instalar o desinstalar ASP.NET 4.5 con IIS8 a través del cuadro de dialogo "Activar o desactivar las caracteristicas de Windows", la herramienta administrador del servidor.
Finalizó la instalación de ASP.NET"

Con esto sin duda alguna supe cual era la solución, imagino ustedes también, debemos desactivar y volver a activar la característica de Windows "IIS" instalando así todo lo necesario para esta nueva versión de Windows (en mi caso de 7 a 10), por si no saben donde es esto, lo resumo en una imagen.



Espero les sea de utilidad.
Saludos!.

jueves, 4 de agosto de 2016

Inventarios - Auditoría de Stock Por Lote y Almacén

Les mostrare a continuación como podemos obtener una consulta de stock de artículos por Lote, esto por que me encontré que al querer consultar las tablas RSRN, RBTN, RITL o SBDR  para realizar una consulta personalizada con estos datos, resulta que no existen 😮, seguro a mas de uno nos ha pasado, por lo que me di a la tarea de encontrar estos datos, a continuación les dejo la consulta:

select b.ItemName, a.ItemCode, a.WhsCode, a.BatchNum
, b.SalUnitMsr
, a.Quantity
, a.ExpDate,  a.PrdDate, a.InDate, a.CreateDate
, c.U_GroupName
from OIBT a
inner join OITM b on a.ItemCode = b.ItemCode
inner join OITB c on c.ItmsGrpCod = b.ItmsGrpCod

La tabla en negritas es la importante aquí, las demás son opcionales dependiendo sus necesidades pueden ir agregando o quitando, Ojo no confundir esta consulta con la de Producción de lotes, para eso esta la vista OITL e ITL1.

Cualquier duda o comentario, no dudes en publicarlo.
Saludos!.

miércoles, 27 de julio de 2016

Gestión - Parametrización de Categorías de UDF


Hoy me encontré con que algunos UDF no se visualizaban en una de las categorías del documento Salida de Mercancías, por lo que me di a la tarea de investigar donde se administra esto, busque en el modulo de gestión sin éxito alguno, después de un rato, supe que estando sobre el documento usando la combinación Ctrl + Shift + B, ahí mismo esta la opción de crear una nueva categoría, importante mencionar que antes debes tener activa la vista de Campos Definidos por el Usuario en el sistema. dejo la imagen del resultado.


Espero les sea útil el dato.
Saludos.

Arrancamos!!!


Hoy Inicio este blog para ustedes, el cual solo tiene el fin de compartir mis experiencias con SAP B1, ya que estoy en proceso de aprendizaje verán que hasta lo mas mínimo estaré publicando, sabemos que en ocasiones eso mínimo nos acaba dando buenos dolores de cabeza.

Tiene poco menos de un año cuando tuve la oportunidad de tener un usuario (superusuario) propio dentro del sistema y de ahí inicio toda la aventura con SAP B1, de igual forma desarrollo aplicaciones Web, RIA's y de Escritorio utilizando diferentes lenguajes de programación, metodologías, bases de datos, ORMs, etc, en lo móvil no me siento realmente fuerte dada mi experiencia en esa plataforma, sin embargo, no estoy exento de poder utilizarla con mayor fuerza en algún momento mas adelante ya que la programación es una de mis pasiones :). Es por eso que también estaré compartiendo mis experiencias en la parte de Desarrollo de Software con ustedes.

Espero les sea de ayuda en algo, por aquí nos seguimos viendo.
Saludotes!.