የSmartERP መመሪያ የAshewa Technology Solutions መድረክ

ስክሪንሾቶች

ስክሪንሾቶችን በስክሪፕት በእንግሊዝኛና በአማርኛ ያንሱ፣ እንዲሁም ወቅታዊ ያድርጓቸው።

በዚህ ጣቢያ ላይ ያለው እያንዳንዱ ስክሪንሾት በእጅ የተለጠፈ ሳይሆን በስክሪፕት የተነሳ ነው። ይህም በሁሉም ቦታ ተመሳሳይ መጠንና ገጽታ እንዲኖራቸው ያደርጋል፣ ለእያንዳንዳቸው የእንግሊዝኛና የአማርኛ ስሪት ይሰጣል፣ ሚስጥራዊ መረጃ እንዳይገባ ይከላከላል፣ ጊዜ ያለፈበት ምስል ሲኖርም ለማወቅ ያስችላል።

እንዴት እንደሚገጣጠም#

  1. በsmarterp_docs/shots/ ውስጥ ያለ የሾት ዝርዝር (shot list) ምን እንደሚነሳ ይነግራል፦ ገጹን፣ ደረጃዎቹን፣ ቋንቋዎቹን፣ አማራጭ ጽሑፉን (alt) እና መግለጫውን።
  2. smarterp_docs/tools/shots.py እውነተኛ አሳሽ ይከፍታል፣ ደረጃዎቹን ይከተላል፣ የPNG ፋይሎችን ወደ static/img/ ይጽፋል፣ የእያንዳንዱንም መዝገብ ወደ static/img/manifest.json ያስገባል።
  3. አንድ ገጽ ምስልን በአሴት መለያው (asset id) ያሳያል፤ በራሱ መስመር ላይ።
![Search as you type]({asset:docs-search})

ጣቢያው ለአንባቢው ቋንቋ የሚሆነውን ምስል ይመርጣል፣ የጨለማ ስሪት ካለም ያሳያል። አማራጭ ጽሑፉ (alt) እና መግለጫው ከማኒፌስቱ (manifest) በሁለቱም ቋንቋዎች ይመጣሉ።

አንድ ጊዜ ያዋቅሩ#

Python 3 እና Playwright ሊነዳው የሚችል አሳሽ ያስፈልግዎታል፦

pip install playwright
playwright install chromium

ስክሪንሾቶቹን ያንሱ#

python3 smarterp_docs/tools/shots.py

ስክሪፕቱ የመመሪያውን ቅድመ እይታ ራሱ ያስጀምራል፤ ስለዚህ ሌላ ምንም ነገር መሄድ የለበትም። የጻፈውን እያንዳንዱን ፋይል፣ መጠኑን እና ማንኛውንም ችግር ያትማል። ማንኛውም ነገር ካልተሳካ በስህተት ይወጣል፤ ስለዚህ በራስ-ሰር ፍተሻ ውስጥ ለመጠቀም ደህንነቱ የተጠበቀ ነው።

አማራጭየሚያደርገው
--only IDይህን አሴት ብቻ ያነሳል። ለብዙ አሴቶች ይድገሙት።
--lang amይህን ቋንቋ ብቻ ያነሳል።
--checkምንም አይጽፍም። ጊዜ ያለፈባቸውን ምስሎች ያሳውቃል።
--listሾቶቹን ዘርዝሮ ይቆማል።
--base-url URLየሾት ዝርዝሮቹን ወደ ሌላ ጣቢያ፣ ለምሳሌ ወደ SmartERP የማሳያ ዳታቤዝ ያመላክታል።
--optimiseእያንዳንዱን PNG ያለ ጥራት መቀነስ እንደገና ይጨመቃል። Pillow ያስፈልገዋል።
--pruneማኒፌስቱ ከእንግዲህ የማይዘረዝራቸውን የምስል ፋይሎች ይሰርዛል።

የሾት ዝርዝር ይጻፉ#

የሾት ዝርዝር በsmarterp_docs/shots/ ውስጥ ያለ JSON ፋይል ነው። ይህኛው የመነሻ ገጹን ሁለት ምስሎች፣ አንዱን በእንግሊዝኛ አንዱን በአማርኛ ያነሳል፦

{
  "base": "preview",
  "defaults": {"viewport": [1280, 760], "languages": ["en", "am"], "themes": ["light"]},
  "shots": [
    {
      "id": "docs-home",
      "url": "/docs/{lang}",
      "steps": [{"wait_for": ".card"}],
      "annotate": [
        {"target": ".search", "text": {"en": "Search box.", "am": "የፍለጋ ሳጥን።"}}
      ],
      "alt": {"en": "The documentation home page.", "am": "የመመሪያው መነሻ ገጽ።"},
      "caption": {"en": "The home page.", "am": "መነሻ ገጽ።"}
    }
  ]
}
መስክትርጉም
idየአሴቱ መለያ፦ ትናንሽ ፊደላት፣ አኃዞችና ነጠላ ሰረዞች።
urlየሚከፈተው ገጽ። {lang} ወደ en ወይም am ይቀየራል።
stepsመጀመሪያ የሚደረጉ ነገሮች፣ እያንዳንዳቸው አንድ ቁልፍ ያላቸው፦ goto፣ click፣ hover፣ fill፣ press፣ wait_for፣ wait፣ scroll_to።
capture"viewport" (ነባሪው)፣ "full_page"፣ ወይም ለአንድ ንጥረ ነገር {"selector": ".callout"}።
maskምስሉ ከመነሳቱ በፊት የሚደበዝዙ ሴሌክተሮች።
annotateተከበው ቁጥር የሚሰጣቸው ንጥረ ነገሮች። የእያንዳንዳቸው ጽሑፍ ከምስሉ ስር ቁጥር ያለው ዝርዝር ይሆናል።
themes["light"]፣ ወይም የጨለማ ስሪትም ለማንሳት ["light", "dark"]።
alt, captionበእያንዳንዱ ቋንቋ የግድ ያስፈልጋሉ።

በአንድ ደረጃ ውስጥ ያለ እሴት በቋንቋ ሊለያይ ይችላል፤ ለምሳሌ {"fill": [".search input", {"en": "approval", "am": "ማጽደቅ"}]}። እንዲሁም እንደ $ENV:ODOO_PASSWORD የአካባቢ ተለዋዋጭ (environment variable) ማንበብ ይችላል፤ ስለዚህ የይለፍ ቃል በፋይል ውስጥ አይቀመጥም።

ስክሪፕቱ የሚጠብቅዎት ከምንድን ነው#

  • ቃላት የሌለው ምስል የለም። በሁለቱም ቋንቋዎች አማራጭ ጽሑፍ (alt) ወይም መግለጫ የሌለው ሾት አሳሽ ከመጀመሩ በፊት ውድቅ ይደረጋል፤ አንድ ገጽ እነዚህ የሌሉትን ምስል ከተጠቀመም የይዘት ፍተሻዎቹ ይወድቃሉ።
  • ሚስጥር የለም። ከእያንዳንዱ ምስል በፊት ስክሪፕቱ የሚታየውን ጽሑፍ ያነባል። ከተፈቀዱት ጎራዎች ውጭ ያለ የኢሜይል አድራሻ፣ የኤፒአይ ቁልፍ፣ ቶክን፣ የይለፍ ቃል ወይም የስልክ ቁጥር ያ ምስል እንዳይቀመጥ ያደርጋል፤ ሩጫውም ይወድቃል። ደንቦቹ በshots/_policy.json ውስጥ ናቸው። በmask ውስጥ ያለ ማንኛውም ነገር ይደበዝዛል፤ ከፍተሻውም ይወጣል።
  • የመጠን ገደብ። ከ250 KB በላይ የሆነ ምስል ይታወቃል፤ ስለዚህ ገጾች በዝግተኛ ግንኙነት ላይ ቀላል ሆነው ይቆያሉ።
  • ከመዝገቡ ጋር የሚስማሙ ፋይሎች። ፍተሻዎቹ በstatic/img/ ውስጥ ያለ እያንዳንዱ ፋይል በማኒፌስቱ ውስጥ መኖሩን፣ ቼክሰሙና መጠኑ አሁንም እንደሚስማሙ፣ አንድ ገጽ የሚያሳየው እያንዳንዱ ምስል መኖሩን ያረጋግጣሉ።

ማስጠንቀቂያ

ስክሪንሾቶችን ከየማሳያ ዳታ ብቻ ያንሱ፤ የደንበኛ ስሞች፣ ዋጋዎች ወይም የሠራተኛ ዝርዝሮች ካሉበት ከቀጥታ ሥርዓት በጭራሽ አያንሱ። ፍተሻው የተለመዱ ንድፎችን ይይዛል፤ አንድ ሰው የሚያውቀውን ሁሉ አይይዝም።

ወቅታዊ ያድርጓቸው#

በማያ ገጾቹ ላይ ለውጥ ከተደረገ በኋላ ፍተሻውን ያሂዱ፦

python3 smarterp_docs/tools/shots.py --check

ለእያንዳንዱ ቋንቋ ገጹን እንደገና ይከፍታል፤ በገጹ ላይ ያለውን ምስሉ ከተነሳበት ጊዜ ጋር ያወዳድራል። ከእንግዲህ የማይስማማ ምስል ጊዜ ያለፈበት (stale) ተብሎ ይገለጻል። እንደገና ያንሱት፣ ይመልከቱት፣ አዲሱንም ፋይል ከማኒፌስቱ ጋር ያስገቡ (commit)።

ከSmartERP ራሱ የሚነሱ ማያ ገጾች#

ከዚህ ሞጁል ጋር የሚመጡት የሾት ዝርዝሮች የመመሪያውን ጣቢያ ያነሳሉ። የSmartERP ራሱን ማያ ገጾች፣ ለምሳሌ የማጽደቂያ ወረፋውን ለማንሳት፣ የሾት ዝርዝርን የማሳያ ዳታ ወዳለው የሚሄድ SmartERP ያመላክቱ፤ መለያውንም ከአካባቢው በሚያነቡ ደረጃዎች ይግቡ፦

ODOO_USER=demo ODOO_PASSWORD=... python3 smarterp_docs/tools/shots.py --base-url http://localhost:8069

የSmartERP ራሱን ማያ ገጾችና ይህን ጣቢያ ብቻ ይጠቀሙ። የሌላ ኩባንያ ምርት ወይም የንግድ ምልክት በጭራሽ አያሳዩ።

የማረጋገጫ ዝርዝር#

  • የሾት ዝርዝሩ በእንግሊዝኛና በአማርኛ አማራጭ ጽሑፍና መግለጫ አለው፤ አማርኛ የሚያነብ አርታዒም አማርኛውን አይቶታል።
  • python3 smarterp_docs/tools/shots.py ያለ ምንም ችግር ያልቃል።
  • እያንዳንዱን ምስል በሁለቱም ቋንቋዎች ተመልክተዋል።
  • ገጹ ምስሉን በአሴት መለያው በሁለቱም ቋንቋዎች በተመሳሳይ ቦታ ያሳያል።
  • python3 smarterp_docs/tools/run_offline_tests.py ያልፋል።
መጨረሻ የተሻሻለው: 2026-10-16