Recibo (NC desde Solicitud de Devolucion): lotes solo de la distribucion y serie segun tipo de documento. Versión 2.1.7.0

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GeorgeandClaude Sonnet 5.5 committed 2026-10-14 18:03:58 -05:00
1 parent 0a2dc12305
commit d0118d1848
3 files changed
+20 -4

No files matched your search

+10
View File
@@ -62,6 +62,16 @@ transferencias siempre, sin depender de `Notificacion`. Detalle y tabla en
del mismo artículo para el par origen/destino (antes solo tomaba los de la del mismo artículo para el par origen/destino (antes solo tomaba los de la
primera línea y la suma no cuadraba con la cantidad). El almacén de la línea de primera línea y la suma no cuadraba con la cantidad). El almacén de la línea de
la NC sigue saliendo de la factura, no del `codigoSubAlmacen` del request. la NC sigue saliendo de la factura, no del `codigoSubAlmacen` del request.
- **v2.1.7.0 — NC de Recibo (Devolución, base Solicitud de Devolución)**: (1) los
lotes de cada línea eran los del request (`LoteProducto`) **más** los de la
distribución (stock HANA o de la factura, o lote de respaldo por fecha/hora),
con lo que sumaban el doble y podían incluir un lote vacío; ahora se limpia el
lote inicial y quedan solo los de la distribución (el `LoteProducto` del
request ya no se usa en la NC); (2) la serie se elige por el **tipo** del
documento origen (`U_SYP_MDTO == "03"` → `BC10`, otro → `FC10`); antes se
comparaba la serie origen (p. ej. `B005`) con `"03"` y siempre salía `FC10`.
Pendiente: validar con contabilidad la serie de boletas, y que Recibo no
genera transferencias por almacén destino (nunca llena `U_ITC_ALMDES`).
- Sin probar contra SAP: confirmar con la factura 292410 que SAP devuelve - Sin probar contra SAP: confirmar con la factura 292410 que SAP devuelve
`BaseType`/`BaseEntry` en las líneas y `BatchNumbers` en las de la Entrega. `BaseType`/`BaseEntry` en las líneas y `BatchNumbers` en las de la Entrega.
@@ -3,9 +3,9 @@
<PropertyGroup> <PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework> <TargetFramework>netcoreapp3.1</TargetFramework>
<AssemblyName>ITCA_API_SAP_WMS</AssemblyName> <AssemblyName>ITCA_API_SAP_WMS</AssemblyName>
<Version>2.1.6</Version> <Version>2.1.7</Version>
<AssemblyVersion>2.1.6.0</AssemblyVersion> <AssemblyVersion>2.1.7.0</AssemblyVersion>
<FileVersion>2.1.6.0</FileVersion> <FileVersion>2.1.7.0</FileVersion>
<UserSecretsId>24763424-3300-4c85-87e3-503f8fdebd14</UserSecretsId> <UserSecretsId>24763424-3300-4c85-87e3-503f8fdebd14</UserSecretsId>
<!-- Antes solo estaba condicionado a Debug|AnyCPU - un "dotnet publish -c Release" <!-- Antes solo estaba condicionado a Debug|AnyCPU - un "dotnet publish -c Release"
(lo normal para IIS) se quedaba sin este archivo, y Startup.cs revienta con (lo normal para IIS) se quedaba sin este archivo, y Startup.cs revienta con
+7 -1
View File
@@ -403,7 +403,8 @@ namespace Net.Data.WMS.Recibo
} }
#endregion #endregion
string Serie = SerieOrigen == "03" ? "BC10" : "FC10"; // Serie segun el TIPO de documento origen (03 = boleta), no segun su serie
string Serie = U_SYP_MDTO == "03" ? "BC10" : "FC10";
string Correlativo = HelperCorrelativo.Get(Serie); string Correlativo = HelperCorrelativo.Get(Serie);
creditNotesNotes.DocCurrency = returnRequest.DocCurrency; creditNotesNotes.DocCurrency = returnRequest.DocCurrency;
creditNotesNotes.CardCode = returnRequest.CardCode; creditNotesNotes.CardCode = returnRequest.CardCode;
@@ -456,6 +457,10 @@ namespace Net.Data.WMS.Recibo
//=== REALIZA DISTRIBUCION DE STOCK POR LOTE //=== REALIZA DISTRIBUCION DE STOCK POR LOTE
creditNotesNotes.DocumentLines.ForEach(line => creditNotesNotes.DocumentLines.ForEach(line =>
{ {
// La linea nace con un lote del request (LoteProducto); se descarta para que
// los lotes finales sean solo los de la distribucion y sumen la cantidad de la linea
line.BatchNumbers.Clear();
#region CONSULTA A HANA #region CONSULTA A HANA
var ListaStock = HelperStock.Get(line.ItemCode, line.WarehouseCode); var ListaStock = HelperStock.Get(line.ItemCode, line.WarehouseCode);
@@ -492,6 +497,7 @@ namespace Net.Data.WMS.Recibo
{ {
creditNotesNotes.DocumentLines.ForEach(line => creditNotesNotes.DocumentLines.ForEach(line =>
{ {
line.BatchNumbers.Clear();
var ReferenciaFactura = returnRequest.DocumentLines.FirstOrDefault(t => t.LineNum == line.LineNum); var ReferenciaFactura = returnRequest.DocumentLines.FirstOrDefault(t => t.LineNum == line.LineNum);
var ListaStock = _Invoice.DocumentLines.FirstOrDefault(InvoiceLine => InvoiceLine.LineNum == ReferenciaFactura.BaseLine).BatchNumbers; var ListaStock = _Invoice.DocumentLines.FirstOrDefault(InvoiceLine => InvoiceLine.LineNum == ReferenciaFactura.BaseLine).BatchNumbers;
if (ListaStock.Count > 0) if (ListaStock.Count > 0)