Share via

Conection with ERP

Alexander Lopez 20 Reputation points
2026-03-25T20:03:50.41+00:00

Hello, good afternoon. I would like to assess the viability of a development proposal using Azure infrastructure. Currently, my business runs locally using a series of scripts executed via Windows Task Scheduler. These scripts connect to Acumatica and ultimately store data in my SQL Server Management Studio database. I want to migrate to your cloud architecture, and my idea is as follows: rewrite my scripts as Azure Functions, handle the scheduling using a Logic Apps timer, and use an Azure SQL Database. Would this approach work? Also, what would the approximate costs be if the scheduled tasks run every hour?

Azure Functions
Azure Functions

An Azure service that provides an event-driven serverless compute platform.


Answer accepted by question author
  1. Pravallika KV 13,305 Reputation points Microsoft External Staff Moderator
    2026-03-25T20:31:28.5166667+00:00

    Hi Alexander Lopez,

    Thanks for reaching out to Microsoft Q&A.

    Migrating your on-premises scripts to Azure using Azure Functions, Logic Apps, and Azure SQL Database is a solid and widely adopted approach.

    You can rewrite each of your existing scripts as Azure Functions using PowerShell, C#, or Python, and handle scheduling either through a built-in Timer Trigger within the Function App using a CRON expression or by using a Logic App with a Recurrence trigger to invoke the function every hour via HTTP.

    The processed data can then be stored in Azure SQL Database, with connection strings securely managed through Key Vault or application settings.

    Why it works?

    • This design is effective because timer triggers are natively supported in Azure Functions, no extra infrastructure is needed for scheduling.
    • Logic Apps offers a super-simple “visual” schedule and built-in retry/durable workflows if you need more orchestration
    • Azure SQL is the equivalent of your SQL Server, fully managed, auto-backups, geo-replication, etc.
    1. Rough cost estimation (in USD/month)

    Azure Functions (Consumption Plan):

    • Executions: 720 runs/month (once per hour) well below the free grant of 1 M executions
    • Memory/compute: even if each run uses 512 MB for 30 s, that’s ~0.006 GB-hours per run → ~0.004 GB-hours total/month =>effectively free

    Logic Apps scheduling:

    • Recur trigger + 1 HTTP action = ~2 actions per run
    • Actions cost $0.000025 each → 2 × 720 × $0.000025 ≈ $0.036/month

    Azure SQL Database

    • Depends on performance level: Basic DTU starts around $5/month, Standard from ~$15–$75, vCore tiers ~$100+ depending on cores/storage

    Networking, storage, Key Vault, monitoring: small extras, but generally low for this scale. Even with conservative sizing, you’d be in the low two-digit dollars per month range.

    References:

    Hope this helps!


    If the resolution was helpful, kindly take a moment to click on User's imageand click on Yes for was this answer helpful. And, if you have any further query do let us know.


1 additional answer

Sort by: Most helpful
  1. Q&A Assist
    2026-03-25T20:04:09.45+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    The proposed architecture is viable and aligns with recommended Azure patterns for background jobs and scheduled tasks.

    1. Azure Functions for the scripts
      • Background jobs that don’t run for a long time are a good fit for Azure Functions.
      • Functions can be triggered on a schedule directly with a Timer trigger using a CRON expression, so in many cases a separate Logic Apps timer isn’t required.
      • Example C# timer trigger (runs every 15 minutes in the sample, but can be adjusted to every hour):
             [FunctionName("TimerTriggerCSharp")]
             public static void Run([TimerTrigger("0 */15 * * * *")]TimerInfo myTimer, ILogger log)
             {
                 if (myTimer.IsPastDue)
                 {
                     log.LogInformation("Timer is running late!");
                 }
                 log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
             
                 // Call Acumatica and write to Azure SQL
             }
        
      • For an hourly schedule, the CRON expression in the Timer trigger can be changed accordingly (for example, 0 0 * * * * for once per hour).
    2. Logic Apps vs. Functions for scheduling
      • Logic Apps are well-suited for orchestrating workflows across multiple services and systems, especially when many connectors or complex orchestration are needed.
      • If the requirement is primarily “run code on a schedule,” Azure Functions with a Timer trigger is simpler and avoids the extra Logic Apps cost and complexity.
      • Logic Apps can still be used if there is a need to visually orchestrate multiple steps, call other SaaS systems, or combine several functions.
    3. Azure SQL Database
      • Replacing the on-premises SQL Server with Azure SQL Database fits the pattern of moving background jobs to Azure.
      • Functions can connect to Azure SQL Database using standard connection strings and client libraries.
    4. Cost considerations (qualitative)
      • Azure Functions: billed mainly on execution count, execution time, and memory consumption in the Consumption plan. Running a short function once per hour is typically low cost, but exact cost depends on execution duration, memory usage, and number of functions.
      • Logic Apps: pay-as-you-go based on the number of actions and connectors executed in the workflow. Adding a Logic App timer plus actions to call Functions or APIs adds per-action costs.
      • Azure SQL Database: charged per chosen service tier (DTU/vCore, storage, etc.), independent of how often the job runs.
      • Because pricing depends on region, chosen tiers, and actual usage, exact cost cannot be derived from the provided context. However, architecturally, running hourly scheduled tasks with Functions and Azure SQL is a standard, cost-efficient pattern when the workload is modest.
    5. Alternative: Functions-only scheduling
      • To simplify and minimize Logic Apps charges, consider:
        • Use Azure Functions with a Timer trigger for hourly scheduling.
        • Use Azure SQL Database for storage.
        • Introduce Logic Apps only if workflow orchestration or many external connectors are required.

    References:

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.