martes, 17 de junio de 2025

SAP B1 FOR HANA IMPORTAR DTW UDO TEMPLATES

Estimados para subir un DTW UDO Templates seguiremos los siguientes pasos



Seleccionas New data si vas a crear o update si vas a actualizar



                                        Buscar tu tabla personalizada


Y Finalmente lo cargas


Listo




SAP B1 FOR HANA GENERAR PLANTILLA DTW OBJETOS DEFINIDOS POR EL USUARIO

 Estimados, algo que muchos se preguntan es como obtener las plantillas DTW para tablas personalizadas de usuarios, les dare el paso a paso y lo mejor en ESPAÑOL!!.

Paso 1 entramos en DTW e ingresamos a la siguiente ruta.

Generamos UDO (User Defined Objects) Templates



Paso 2 .- Marcamos el solo el Objeto personalizado que deseamos exportar y le damos en "Generate Template"




Listo con esto tienes tu plantilla personalizada.


Slds

domingo, 18 de mayo de 2025

SAP B1 LIMITE DE RESULTADO QUERY HANA

Estimados amantes de SAP Hana, envio los pasos  para cambiar la cantidad de registros a visualizar en HANA SQL.

 

1.-Windows/Preferences


2.-SAP  HANA/Runtime/Results



miércoles, 14 de mayo de 2025

SUNAT PAGO DE TRIBUTO RENTA REGIMEN MYPE TRIBUTARIO

 Estimados,


Veremos el caso como realizar el pago de renta mensual mype tributario.

Primero tenemos que verificar si en Boleta de Pago/Pago de valores , si se encuentra aqui pueden seleccionar directamente el pago por este medio, tener en cuenta que aqui ya sale cuando va ha generarles intereses, caso contrario se realizaria por pago de Boleta de Pago/Pago de tributos.


Seleccionan el tributo a pagar y el tributo 3121 - RENTA REGIMEN MYPE TRIBUTARIO, posteriormente ingresan el importe a pagar este importe lo sacan de la declaración previamente realizada.

Espero les sirva de ayuda.






miércoles, 16 de abril de 2025

SAP B1 HANA SQL DOCUMENTO ORIGEN Y DOCUMENTO DESTINO BaseEntry - DocEntry

 Estimados,

He tenido muchas consultas referente a como relacionar 2 documento origen y destino sea de una orden de venta, desde una cotización, un pedido desde una oferta de venta, una orden de compra desde una factura de proveedor, etc, etc.

Entendamos que SAP B1 Hana o "Papa SAP" lo realiza de la manera mas correcta el cual es relacionarlos a nivel de detalles de la siguiente manera.

1.- LEFT JOIN DLN1 ENTDET ON ENTDET."BaseEntry" = R2."DocEntry"  AND R2."ItemCode" = ENTDET."ItemCode"    

 2.-LEFT JOIN INV1 FACDET ON FACDET."BaseEntry" = ENTDET."DocEntry"    AND ENTDET."ItemCode" = FACDET."ItemCode"

   

Paso a explicar la tabla DLN1 es la tabla detalle de entregas donde se relaciona con R2 donde es "RDR1 R2" osea es el detalle de la orden de venta, si analizamos BaseEntry es usado para vincular documentos, osea se guarda el documento origen o el "DocEntry" origen en la tabla destino (DLN1)y este se relaciona con DocEntry del documento Origen(RDR1).


Servido!! espero con esto absolver muchas de sus dudas y ahorrarles mucho tiempo,  tener en cuenta que esto funciona tanto para la version ms sql server como para Hana SQL.

Slds!!



martes, 8 de abril de 2025

C# RESPONSE BADREQUEST 400


    // Crear una solicitud HTTP

                HttpClient client = new HttpClient();

                string url = "tuendpoint";


                // Crear el cuerpo de la solicitud

                string jsonBody = JsonConvert.SerializeObject(tuObject);

                HttpContent content = new StringContent(jsonBody, Encoding.UTF8, "application/json");


                // Enviar la solicitud POST

                HttpResponseMessage response = await client.PostAsync(url, content);


                // Verificar el estado de la respuesta

                if (response.IsSuccessStatusCode)

                {

                    Console.WriteLine("Solicitud exitosa");

                    string responseBody = await response.Content.ReadAsStringAsync();

                    Console.WriteLine(responseBody);

                }

                else if (response.StatusCode == System.Net.HttpStatusCode.BadRequest)

                {

                    Console.WriteLine("Error 400 Bad Request");

                    string responseBody = await response.Content.ReadAsStringAsync();

                    Console.WriteLine(responseBody);

                }

                else

                {

                    Console.WriteLine("Error en la solicitud");

                }