Utilidad para abrir el formulario de apuntes desde una llamada por VBSscript.
La llamada necesita conocer la empresa, una lista de IdDocs y de forma opcional el formulario padre que lo llama.
Código VB6:
Sub Main()
'Obtengo los IdDocs de la IdFactura: 1
lAsi = "" & gCn.DameValorCampo("SELECT IdDocs FROM dbo.funDameIdDocsAsientosFacturaCli(" & 1 & ", default, default, default)")
If Len(lAsi) = 0 Then
MsgBox gCn.Traducir(33995, "No se encontraron asientos para la factura."), vbInformation, gCn.Traducir(34005, "Ver Asientos")
End If
Set lFrm = gCn.AhoraProceso("ObjFormConta_Apuntes", False, True)
If lFrm Is Nothing Then
MsgBox "othing"
End If
lFrm.Carga_IdDocs gcn.IdEmpresa, CStr(lAsi) , gcn.sesion.mainform ' Importante convertir a Testo Cstr()
frmAux.Descargar 'ATENCIÓN: DEBE ESTAR SIEMPRE QUE NO SE MUESTRE EL FORMULARIO.
End SubCódigo C#:
using AhoraConta;
using AhoraCore;
using AhoraOCX;
using AhoraSistema;
using static AhoraCore.VBA.Interaction;
namespace AhoraScriptsVacia
{
public class Script_72 : AhoraOCX.AhoraBaseScript
{
public void Main()
{
// Obtengo los IdDocs de la Factura
Valor lAsi = gCn.DameValorCampo("SELECT IdDocs FROM dbo.funDameIdDocsAsientosFacturaCli(" + 1 + ", default, default, default)");
if (lAsi.ToString().Length == 0)
{
MsgBox(gCn.Traducir(33995, "No se encontraron asientos para la factura."), VbMsgBoxStyle.vbInformation, gCn.Traducir(34005, "Ver Asientos"));
return;
}
IfrmApuntes lFrm = (IfrmApuntes)gCn.AhoraProceso("ObjFormConta_Apuntes", out _, true);
if (lFrm == null)
{
MsgBox("Null");
return;
}
lFrm.Carga_IdDocs(gCn.IdCalendario, lAsi.ToString(), gCn.Sesion.MainForm);
}
}
}