ExtensionDocFactory.cs
1 using sage.ew.ewbase;
3 
4 namespace sage.addons.offline.Negocio.Documentos
5 {
6  internal class ExtensionDocFactory
7  {
8  public enum ExtensionsDoc
9  {
10  presupuestoventa,
11  pedidoventa,
12  depositoventa,
13  albaranventa,
14  facturaventa,
15  asientos,
16  albarancompra,
17  pedidocompra,
18  depositocompra,
19  facturacompra,
20  stockini,
21  stockalbregulari,
22  stockalbtraspaso,
23  stockinventario,
24  solicitudmaterial,
25  arqueotpv
26  };
27 
28  public object GetExtensionDoc(ExtensionsDoc extension, ProcesosEnEjecucion tipoProceso)
29  {
30  object extDocu = null;
31  switch (extension)
32  {
33  case ExtensionsDoc.arqueotpv:
35  break;
36  case ExtensionsDoc.presupuestoventa:
37  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocPresuVenta>();
38  break;
39  case ExtensionsDoc.pedidoventa:
40  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocPedVenta>();
41  break;
42  case ExtensionsDoc.depositoventa:
43  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocDepoVenta>();
44  break;
45  case ExtensionsDoc.albaranventa:
46  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocAlbVenta>();
47  break;
48  case ExtensionsDoc.facturaventa:
49  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocFactVenta>();
50  break;
51  case ExtensionsDoc.asientos:
52  extDocu = DependencyInjector.Instance.Retrieve<ExtensionAsientos>(tipoProceso.ToString());
53  break;
54  case ExtensionsDoc.albarancompra:
55  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocAlbCompra>();
56  break;
57  case ExtensionsDoc.pedidocompra:
58  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocPedCompra>();
59  break;
60  case ExtensionsDoc.depositocompra:
61  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocDepoCompra>();
62  break;
63  case ExtensionsDoc.facturacompra:
64  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocFactCompra>();
65  break;
66  case ExtensionsDoc.stockini:
67  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocStockIni>();
68  break;
69  case ExtensionsDoc.stockalbregulari:
70  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocAlbRegulari>();
71  break;
72  case ExtensionsDoc.stockalbtraspaso:
73  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocAlbTraspaso>();
74  break;
75  case ExtensionsDoc.stockinventario:
76  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocStockInventario>();
77  break;
78  case ExtensionsDoc.solicitudmaterial:
79  extDocu = DependencyInjector.Instance.Retrieve<ExtensionDocPedInt>();
80  break;
81  default:
82  break;
83  }
84  return extDocu;
85  }
86  }
87 }
Esta clase se utiliza para la gestión del la extensión ExtensionFrmArqueo del formulario frmArqueo ...
object Retrieve(Type T)
Resuelve objeto de tipo T
Es como el tipo de entrada asientos pero por negocio, sin formulario, pq quiero que me haga las propu...
ProcesosEnEjecucion
Enumeración de procesos posibles en los que el addon podrá realizar alguna acción con las extensiones...
Definition: ewbaseenum.cs:48
Clase Inyector de dependencias para resolver las dependencias