آموزشی ساخت اپ موبایل حسابداری ساده با Google Sheets، Apps Script و AppSheet

در این آموزش قدم به قدم به شما نشان می‌دهم که چگونه یک اپ حسابداری ساده بسازید. ابتدا یک شیت گوگل ایجاد می‌کنیم، سپس با استفاده از Apps Script یک اسکریپت برای درج تاریخ به‌صورت خودکار اضافه می‌کنیم و در نهایت اپ حسابداری را در AppSheet می‌سازیم. آماده‌اید؟ بیایید شروع کنیم!

پخش ویدئو از طریق آپارات

پخش ویدئو از طریق یوتیوب

ویدئو از طریق

گام ۱: ساخت و طراحی شیت گوگل

  1. وارد Google Drive شوید و روی New کلیک کنید.
  2. گزینه Google Sheets را انتخاب کنید تا یک شیت جدید ایجاد شود.
  3. نام این شیت را مثلاً «حسابداری من» بگذارید.

در ردیف اول، ستون‌های مورد نیاز را تعریف کنید. به عنوان مثال، شش ستون زیر:

  • ستون A: ID
  • ستون B: تاریخ
  • ستون C: نوع
  • ستون D: دسته‌بندی
  • ستون E: مبلغ (تومان)
  • ستون F: ملاحظات

توجه داشته باشید که ستون ID را خالی بگذارید؛ چون ما قصد داریم این ستون به‌صورت خودکار مقدار یکتا دریافت کند.


گام ۲: افزودن اسکریپت برای درج خودکار تاریخ

در این مرحله، می‌خواهیم اسکریپتی بنویسیم که وقتی کاربر در ستون‌های نوع یا دسته‌بندی (ستون‌های C یا D) مقداری وارد کند و اگر ستون تاریخ (ستون B) خالی باشد، تاریخ امروز به‌طور خودکار در آن درج شود.

  1. در شیت، به منوی Extensions رفته و Apps Script را انتخاب کنید.

  2. در محیط کدنویسی که باز می‌شود، فایل Code.gs را باز کنید و کد زیر را وارد نمایید:

     
کد با دکمه کپی

function onEdit(e) {
  // اگر رویداد معتبر نباشد، تابع را متوقف می‌کنیم
  if (!e || !e.range) return;
  
  var sheet = e.range.getSheet();
  var range = e.range;
  
  // بررسی می‌کنیم اگر ویرایش در ستون C یا D اتفاق افتاد و مقدار وارد شده خالی نیست
  if ((range.getColumn() === 3 || range.getColumn() === 4) && range.getValue() !== "") {
    var row = range.getRow();
    var dateCell = sheet.getRange(row, 2); // سلول مربوط به ستون B (شماره 2)
    
    // اگر سلول تاریخ هنوز خالی است، تاریخ امروز را درج می‌کنیم
    if (dateCell.getValue() === "") {
      var now = new Date();
      dateCell.setValue(
        Utilities.formatDate(now, Session.getScriptTimeZone(), "dd/MM/yyyy")
      );
    }
  }
}
    
  1. کد را ذخیره کنید و به شیت برگردید.
    نکته: این اسکریپت زمانی اجرا می‌شود که شخصاً در داخل شیت گوگل ویرایش انجام شود. اگر داده‌ها از طریق AppSheet وارد شوند، ممکن است اسکریپت اجرا نشود؛ در چنین مواردی توصیه می‌شود از فرمول‌های Initial Value در AppSheet برای ستون تاریخ استفاده کنید.


گام ۳: ایجاد اپ در AppSheet

  1. به سایت AppSheet.com وارد شوید و با همان حساب گوگل که شیت «حسابداری من» در آن قرار دارد، وارد شوید.
  2. در داشبورد AppSheet، روی Make a new app یا Start with your data کلیک کنید.
  3. شیت «حسابداری من» را از لیست انتخاب کنید.
    AppSheet به‌طور خودکار ساختار شیت را می‌خواند و یک اپ اولیه برای شما ایجاد می‌کند.

گام ۴: تنظیم ستون‌ها در AppSheet

به بخش Data > Columns بروید تا ستون‌ها را تنظیم کنیم.

 

  1. تنظیم ستون ID:

    • روی ستون ID کلیک کنید.
    • Type را به Text تغییر دهید.
    • گزینه Key? را فعال کنید.
    • در قسمت Initial Value عبارت زیر را وارد کنید:
کد UNIQUEID()
UNIQUEID()
    • برای پنهان کردن این ستون از فرم، گزینه Show? را خاموش کنید.
    • توجه کنید: اطمینان حاصل کنید که این فرمول در Initial Value قرار دارد و نه در App formula؛ چون AppSheet اجازه استفاده از فرمول در App formula برای ستون Key را نمی‌دهد.
  1. تنظیم سایر ستون‌ها:

    • ستون تاریخ را به Date تغییر دهید. اگر می‌خواهید به‌صورت خودکار تاریخ امروز درج شود، می‌توانید در Initial Value از TODAY() استفاده کنید.
    • ستون نوع را به Enum تبدیل کنید و گزینه‌های «هزینه»، «درآمد نقدی»، «درآمد بانکی» و … را وارد نمایید.
    • ستون دسته‌بندی را نیز به Enum تنظیم کنید و مقادیر دلخواه مانند «تفریحات»، «خوراک»، «حمل‌ونقل» و … را اضافه کنید.
    • ستون مبلغ (تومان) را به Price یا Decimal تغییر دهید.
    • ستون ملاحظات را به LongText یا Text تنظیم کنید.
  2. تغییرات را ذخیره کنید.
    اگر پیغام یا اخطاری در خصوص تعداد ستون‌ها یا Key دریافت کردید، از گزینه Regenerate Structure در بخش Data > Tables استفاده کنید.


گام ۵: تست و نهایی‌سازی اپ

  1. به بخش UX بروید تا نماهای (Views) اپ را مشاهده کنید.
  2. معمولاً AppSheet به‌صورت خودکار یک فرم (Form View) برای وارد کردن رکوردهای جدید و یک نمای لیست (Table یا Deck View) برای نمایش داده‌ها ایجاد می‌کند.
  3. روی دکمه Preview یا View app کلیک کنید.
  4. در فرم، یک رکورد جدید وارد کنید. توجه کنید که ستون ID پنهان است و کاربر آن را نمی‌بیند، اما بعد از ذخیره، AppSheet به‌صورت خودکار مقدار UNIQUEID() تولید و در شیت ذخیره می‌کند.
  5. اگر نیاز به تست اسکریپت دارید، مستقیماً داخل شیت گوگل ویرایش کنید و در ستون‌های نوع یا دسته‌بندی مقداری وارد کنید تا ببینید آیا تاریخ به صورت خودکار در ستون تاریخ درج می‌شود یا خیر.

جمع‌بندی

امیدوارم با دنبال کردن این مراحل، یک اپ حسابداری ساده بسازید:

  • ابتدا یک شیت گوگل با ستون‌های مورد نیاز طراحی کردیم.
  • سپس یک اسکریپت در Apps Script نوشتیم تا در صورت ویرایش برخی ستون‌ها، تاریخ به‌صورت خودکار درج شود.
  • در نهایت، اپ را در AppSheet از روی شیت ایجاد و ستون‌ها را به‌درستی تنظیم کردیم تا ستون ID به صورت خودکار و پنهان مقدار یکتا دریافت کند.

 

با این روش، دیگر نیازی به نگرانی درباره تکراری شدن کلید یا نمایش نامطلوب آن در فرم نخواهید داشت.
موفق باشید و از ساخت اپ خود لذت ببرید!