| |||
Problema para ejecutar un .exe Hola a todos, desarrollé una aplicación que debe ejecutarse automáticamente todos los meses para actualizar una tabla de una base de datos Sql Server 2000. Primero lo hice en ASP.Net para ver que la lógica anduviera bien. Aclaro que no tengo Visual Studio. Una vez logrado, construí una clase con el mismo código usado en ASP.Net y lo compilé en un .exe (pues la idea es que corra en un Job del Sql Server). El problema es que da un error al ejecutar. Según el WinDbg es: "symbol file could not be found. Defaulted to export symbols for NTDLL.DLL". Más allá de ésto, no tengo otros datos. Alguien puede decirme que podría estar pasando ? Muchas Gracias. |
| |||
La aplicación calcula fechas de vencimiento para impuestos. El código es el siguiente: Imports System Imports System.Data Imports System.IO Imports nEB.Data Imports Microsoft.VisualBasic 'vbc ebDateJob.vb /target:winexe /reference:system.dll,system.data.dll,ebConnData.dl l Public Class ebDateJob Public shared Sub Main() Dim wDate as Date = Now() Dim MM_Process as Integer = Month(wDate) Dim strCmd as String strCmd = "SELECT edTaxCode, edDigit, edSequence, tdStartDay, tdFrequency FROM ebExpireDate JOIN ebTaxDescription ON edTaxCode = tdTaxCode ORDER BY edTaxCode" Dim ac1 as cAccessData = New cAccessData() Dim dt1 as DataTable = ac1.fAccessSelect(strCmd) strCmd = "SELECT dtDayNo, dtDayText, dtEnable FROM ebDateTable WHERE DATEPART(MM, dtDate) = '" & MM_Process & "'" Dim ac2 as cAccessData = New cAccessData() Dim dt2 as DataTable = ac2.fAccessSelect(strCmd) Dim rw as DataRow() Dim ro As DataRow() Dim k as Integer Dim J as Integer Dim jSeq as Integer Dim wTaxCode as String Dim wDigit as Integer Dim wSeq as Integer Dim wStartDay as Integer Dim wExit as Boolean Dim Expire_Day as Integer Dim wDayText as string Dim wEnable as String k = 0 For each rw in dt1.Rows ' ' Procesa los impuestos mensuales y los de meses pares excepto Abril ' If dt1.Rows(k).Item("tdFrequency").ToString = "M" or MM_Process = 2 or MM_Process = 6 or MM_Process = 8 or MM_Process = 10 or MM_Process = 12 then wseq = dt1.Rows(k).Item("edSequence") wTaxCode = dt1.Rows(k).Item("edTaxCode").ToString() wDigit = dt1.Rows(k).Item("edDigit") wExit = False ' ' J suma días consecutivos, no importa si son o no hábiles ' jSeq suma días hábiles ' La actualización se hace cuando se alcanza un día hábil (Enable = "YES") y ' la suma de días hábiles coincide con la secuencia de escalonamiento ' J = 0 jSeq = 0 While wExit = False Expire_Day = dt1.Rows(k).Item("tdStartDay") + J ro = dt2.Select("dtDayNo = " & Expire_day) wDayText = ro(0).item("dtDayText").ToString wEnable = ro(0).item("dtEnable").ToString If wEnable = "YES" Then If jSeq = wSeq Then strCmd = "UPDATE ebExpireDate SET edDayNo = " & Expire_day & ", edDayText = '" & wDayText & "' WHERE edTaxCode = '" & wTaxCode & "' AND edDigit = " & wDigit Dim ac3 as cAccessData = New cAccessData() ac3.fAccessNonQuery(strCmd) wExit = True ac3 = Nothing Else jSeq = jSeq + 1 End If End If J = J + 1 End While End If k = k + 1 Next End Sub End Class |