Ejemplos
<< Click to Display Table of Contents >> Navegación: Características avanzadas > Automatización > Ejemplos |
Crea una cuenta auxiliar
1. Visual Basic
' Agrega una cuenta financiera auxiliar
Sub AgregaCue()
Dim sig
Set sig = CreateObject("Sigrid.App")
sig.Visible = True
' abre la base de datos
sig.abre ("c:\Sigrid3\Demo20.sig")
sig.empresa (1) ' establece la empresa 1 como empresa de trabajo
' Solicita un código de cuenta auxiliar a crear
sig.EjecutaStr ("var c=diaedita('Alta de cuenta auxiliar', 'Código de cuenta auxiliar');RetVal(c);")
cuecod = sig.RetVal
If cuecod = "" Or IsNull(cuecod) Then
sig.EjecutaStr ("diaavisa('No especificó el código de cuenta');")
sig.Quit
Exit Sub
End If
' Busca el ide de la cuenta retornando su valor
sig.EjecutaStr ("var bas= base; var ide=bas.cuabusca ('" & cuecod & "'); RetVal(ide)")
If sig.RetVal = 0 Or IsNull(sig.RetVal) Then
' alta de la cuenta
sig.EjecutaStr ("var bas=base;bas.conagrega (TIPCUA,'" & cuecod & "',
'PRUEBAS_AUTOMATIZACIÓN',0);
diaavisa ('Cuenta creada'); ")
Else
MsgBox ("La cuenta " & cuecod & " ya existe con ide=" & sig.RetVal)
End If
e = sig.Quit()
End Sub
2. JScript
// Alta de cuenta en un programa.js
var sig = new ActiveXObject ("Sigrid.App");
if (sig == null) { WScript.Echo ("ERROR: no se pudo ejecutar Sigrid"); WScript.Quit (-1); }
sig.visible=1
sig.abre ("c:\\Sigrid3\\Demo20.sig")
sig.empresa (1) // establece la empresa 1 como empresa de trabajo
// Solicita un código de cuenta auxiliar
sig.EjecutaStr ("var c=diaedita('Alta de cuenta auxiliar', 'Código de cuenta auxiliar');RetVal(c);")
cuecod = sig.RetVal
if (cuecod=="" || cuecod==null)
sig.EjecutaStr ("diaavisa('No especificó el código de cuenta');")
else {
// Busca el ide de la cuenta retornando su valor
sig.EjecutaStr ("var bas= base; var ide=bas.cuabusca ('" + cuecod + "'); RetVal(ide)")
if (sig.RetVal==0 || sig.RetVal==null) {
// alta de la cuenta
sig.EjecutaStr ("var bas=base;bas.conagrega (TIPCUA,'" +
cuecod + "', 'PRUEBAS AUTOMATIZACIÓN',0)
diaavisa ('Cuenta creada'); ")
if (sig.Error!=0)
WScript.Echo ("Error " + sig.Error)
else WScript.Echo ("Se creó la cuenta")
}
else
WScript.Echo ("La cuenta ya existe")
}
sig.Quit()
Crea un Asiento Contable
Solicita los datos para la creación del asiento, lo crea y a continuación lo modifica para establecer el documento del asiento.
1. Visual Basic
Sub Asiento()
Dim cod As String
Dim res As String
Dim fec As Long
Dim cuenta As String
Dim descri As String
Dim asiide As Long
Set sig = CreateObject("Sigrid.App")
sig.Visible = True
sig.abre ("c:\AppPS\Sigrid3\Demo20.sig") ' abre la base de datos
sig.empresa (1) ' establece la empresa 1 como empresa de trabajo
' Solicita cod, res, obr y fec para el asiento
sig.EjecutaStr ("var fec=diaedita('Fecha del Asiento','Fecha del Asiento (aaaammdd)');RetVal(fec);")
fec = sig.RetVal
sig.EjecutaStr ("var cod=diaedita('Código de Asiento','Código de Asiento');RetVal(cod);")
cod = sig.RetVal
sig.EjecutaStr ("var res=diaedita('Descripción del Asiento','Descripción del Asiento');RetVal(res);")
res = sig.RetVal
sig.EjecutaStr ("var obr=diaedita('Documento del Asiento','Documento del Asiento');RetVal(obr);")
obr = sig.RetVal
Dim S As String
sig.TransInicia
S = "var bas=base; RetVal(bas.conagrega (TIPASI, '" & cod & "', '" & res & "', " & fec & "));"
sig.EjecutaStr (S)
asiide = sig.RetVal()
If asiide Then ' Establece el número de documento del asiento
If obr <> "" Then
S = "UPDATE con SET obr='" & obr & "' WHERE con.ide=" & asiide
sig.EjecutaStr ("var bas=base();bas.ejecuta(" & Chr(34) & S & Chr(34) & ")")
End If
sig.EjecutaStr ("var cuenta=diaedita('Cuenta del Asiento','Cuenta del Asiento');RetVal(cuenta);")
cuenta = sig.RetVal
S = "var bas=base;RetVal(bas.cuabusca('" & cuenta & "')); "
sig.EjecutaStr (S)
cueide = sig.RetVal()
If cueide = 0 Then
sig.EjecutaStr ("var descri=diaedita('Descripción de la Cuenta','Descripción de las Cuenta');RetVal(descri);")
descri = sig.RetVal
S = "var bas=base; RetVal(bas.conagrega (TIPCUA,'" & cuenta & "','" & descri & "', 0));"
sig.EjecutaStr (S)
cueide = sig.RetVal()
End If
If cueide Then
debe = 100
haber = 0
S = "var bas=base;RetVal(bas.apuagrega('" & asiide & "','" & cueide & "','" & debe & "','" & haber & "')); "
sig.EjecutaStr (S)
apuide = sig.RetVal()
If apuide And obr <> "" Then
S = "UPDATE apu SET obr='" & obr & "' WHERE apu.ide=" & apuide
sig.EjecutaStr ("var bas=base();bas.ejecuta(" & Chr(34) & S & Chr(34) & ")")
End If
End If
End If
sig.TransTermina
End Sub