បង្កើតចម្លងពេញលេញនៃគម្រោងដែលមានស្រាប់ជាមួយជម្រើសដែលអាចកំណត់បានសម្រាប់អ្វីដែលត្រូវបញ្ចូល។
ចម្លងគម្រោង
ការប្រែប្រួលចម្លងគម្រោងអនុញ្ញាតឱ្យអ្នកចម្លងគម្រោងដែលមានស្រាប់នៅក្នុងក្រុមហ៊ុនដូចគ្នា ឬទៅក្រុមហ៊ុនផ្សេង។ នេះមានប្រយោជន៍សម្រាប់ការបង្កើតគំរូគម្រោង ការកំណត់គម្រោងដូចគ្នា ឬការផ្លាស់ប្តូរការគម្រោងរវាងក្រុមហ៊ុន។ ប្រតិបត្តិការចម្លងដំណើរការនៅក្នុងរបៀបអសមសម័យដើម្បីដោះសោនគម្រោងធំៗយ៉ាងមានប្រសិទ្ធភាព។
ឧទាហរណ៍មូលដ្ឋាន
mutation CopyProject {
  copyProject(
    input: {
      projectId: "proj_123abc"
      name: "New Project Copy"
      options: {
        todos: true
        todoLists: true
        people: true
      }
    }
  )
}
ឧទាហរណ៍កម្រិតខ្ពស់
mutation CopyProject {
  copyProject(
    input: {
      projectId: "proj_123abc"
      name: "Q2 Marketing Campaign"
      description: "Copy of Q1 campaign with updated timeline"
      imageURL: "https://example.com/campaign-logo.png"
      companyId: "comp_789xyz"
      options: {
        assignees: true
        automations: true
        checklists: true
        customFields: true
        discussions: false
        discussionComments: false
        dueDates: true
        files: true
        forms: true
        people: true
        projectUserRoles: true
        statusUpdates: false
        statusUpdateComments: false
        tags: true
        todoActions: true
        todoComments: false
        todoLists: true
        todos: true
      }
    }
  )
}
ប៉ារ៉ាម៉ែត្រចូល
CopyProjectInput
| ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការ | ការពិពណ៌នា | 
|---|---|---|---|
projectId | 
String! | ✅ បាទ | អត្តសញ្ញាណនៃគម្រោងដែលត្រូវចម្លង | 
name | 
String! | ✅ បាទ | ឈ្មោះសម្រាប់គម្រោងថ្មី (អតិបរិមា 50 តួ) | 
description | 
String | មិនទាន់ | ការពិពណ៌នាសម្រាប់គម្រោងថ្មី (អតិបរិមា 500 តួ) | 
imageURL | 
String | មិនទាន់ | URL រូបភាពសម្រាប់គម្រោងថ្មី | 
companyId | 
String | មិនទាន់ | អត្តសញ្ញាណនៃក្រុមហ៊ុនដែលគម្រោងថ្មីគួរត្រូវបានបង្កើត។ ប្រសិនបើមិនបានផ្តល់នោះទេ វានឹងប្រើក្រុមហ៊ុននៃគម្រោងប្រភព | 
options | 
CopyProjectOptionsInput! | ✅ បាទ | ការកំណត់សម្រាប់អ្វីដែលត្រូវចម្លង | 
CopyProjectOptionsInput
| ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការ | ការពិពណ៌នា | 
|---|---|---|---|
assignees | 
Boolean | មិនទាន់ | ចម្លងអ្នកដែលបានចាត់តាំងភារកិច្ច (ត្រូវការតម្លៃ people: true) | 
automations | 
Boolean | មិនទាន់ | ចម្លងការប្រតិបត្តិ និងការងាររបស់គម្រោង | 
checklists | 
Boolean | មិនទាន់ | ចម្លងបញ្ជីពិនិត្យភារកិច្ច | 
customFields | 
Boolean | មិនទាន់ | ចម្លងការកំណត់ និងតម្លៃវាលផ្ទាល់ខ្លួន | 
discussions | 
Boolean | មិនទាន់ | ចម្លងការពិភាក្សាគម្រោង | 
discussionComments | 
Boolean | មិនទាន់ | ចម្លងមតិយោបល់លើការពិភាក្សា (ត្រូវការតម្លៃ discussions: true) | 
dueDates | 
Boolean | មិនទាន់ | ចម្លងកាលបរិច្ឆេទកំណត់លើភារកិច្ច | 
files | 
Boolean | មិនទាន់ | ចម្លងឯកសារភ្ជាប់ | 
forms | 
Boolean | មិនទាន់ | ចម្លងទម្រង់គម្រោង | 
people | 
Boolean | មិនទាន់ | ចម្លងសមាជិកគម្រោង | 
projectUserRoles | 
Boolean | មិនទាន់ | ចម្លងតួនាទី និងអនុញ្ញាតអ្នកប្រើ (ត្រូវការតម្លៃ people: true) | 
statusUpdates | 
Boolean | មិនទាន់ | ចម្លងការអាប់ដេតស្ថានភាពគម្រោង | 
statusUpdateComments | 
Boolean | មិនទាន់ | ចម្លងមតិយោបល់លើការអាប់ដេតស្ថានភាព (ត្រូវការតម្លៃ statusUpdates: true) | 
tags | 
Boolean | មិនទាន់ | ចម្លងស្លាកគម្រោង | 
todoActions | 
Boolean | មិនទាន់ | ចម្លងសកម្មភាពភារកិច្ច/ភារកិច្ចតូច | 
todoComments | 
Boolean | មិនទាន់ | ចម្លងមតិយោបល់ភារកិច្ច | 
todoLists | 
Boolean | មិនទាន់ | ចម្លងបញ្ជី/ផ្នែកភារកិច្ច | 
todos | 
Boolean | មិនទាន់ | ចម្លងភារកិច្ច | 
coverConfig | 
Boolean | មិនទាន់ | ចម្លងការកំណត់រូបភាពគម្រប todo | 
ចម្លើយ
ការប្រែប្រួលនឹងត្រឡប់មកវិញតម្លៃ Boolean:
true- ការងារចម្លងត្រូវបានបញ្ជីជោគជ័យfalse- ការងារចម្លងមិនអាចចាប់ផ្តើមបាន
ការត្រួតពិនិត្យស្ថានភាពចម្លង
ដោយសារតែការចម្លងគឺជាអសមសម័យ សូមប្រើសំណួរ copyProjectStatus ដើម្បីពិនិត្យមើលការរីកចម្រើន:
វាលស្ថានភាពចម្លង
| វាល | ប្រភេទ | ការពិពណ៌នា | 
|---|---|---|
queuePosition | 
Int | ទីតាំងក្នុងបញ្ជីចម្លង | 
totalQueues | 
Int | ចំនួនសរុបនៃធាតុក្នុងបញ្ជី | 
isActive | 
Boolean | ថាតើប្រតិបត្តិការចម្លងកំពុងសកម្មឬអត់ | 
oldProject | 
Project | គម្រោងប្រភពដែលកំពុងចម្លង | 
newProjectName | 
String | ឈ្មោះនៃគម្រោងថ្មីដែលកំពុងបង្កើត | 
isTemplate | 
Boolean | ថាតើនេះគឺជាការចម្លងជាគំរូឬអត់ | 
oldCompany | 
Company | ក្រុមហ៊ុនប្រភព | 
newCompany | 
Company | ក្រុមហ៊ុនគោលដៅ | 
query CheckCopyStatus {
  copyProjectStatus {
    queuePosition
    totalQueues
    isActive
    oldProject {
      id
      name
    }
    newProjectName
    isTemplate
    oldCompany {
      id
      name
    }
    newCompany {
      id
      name
    }
  }
}
អនុញ្ញាតដែលត្រូវការ
ដើម្បីចម្លងគម្រោង អ្នកត្រូវការអនុញ្ញាតសមស្របនៅក្នុងទាំងពីរទីតាំងប្រភព និងគោលដៅ:
| ស្ថានភាព | អនុញ្ញាតដែលត្រូវការ | 
|---|---|
| Copy within same company | OWNER, ADMIN, or MEMBER role in the source project | 
| Copy to different company | • OWNER, ADMIN, or MEMBER role in the source project• Must be a member of the target company  | 
គម្រោងប្រភពត្រូវតែសកម្ម (មិនត្រូវបានស្តារឡើងវិញ) ដើម្បីអាចចម្លងបាន។
ការឆ្លើយតបកំហុស
គម្រោងមិនឃើញ
{
  "errors": [{
    "message": "Record not found",
    "extensions": {
      "code": "PROJECT_NOT_FOUND"
    }
  }]
}
កើតឡើងនៅពេលដែលគម្រោងប្រភពមិនមាន ឬអ្នកខ្វះការចូលដំណើរការ។
ក្រុមហ៊ុនមិនឃើញ
{
  "errors": [{
    "message": "Record not found",
    "extensions": {
      "code": "COMPANY_NOT_FOUND"
    }
  }]
}
កើតឡើងនៅពេលដែលក្រុមហ៊ុនគោលដៅមិនមាន ឬអ្នកខ្វះការចូលដំណើរការ។
គម្រោងធំពេក
{
  "errors": [{
    "message": "Project is too large to copy",
    "extensions": {
      "code": "CREATE_PROJECT_LIMIT"
    }
  }]
}
កើតឡើងនៅពេលដែលគម្រោងមានភារកិច្ចលើស 250,000។
ចម្លងកំពុងដំណើរការ
{
  "errors": [{
    "message": "Oops!"
  }]
}
កើតឡើងនៅពេលដែលអ្នកមានការប្រតិបត្តិចម្លងមួយនៅក្នុងដំណើរការ។
កំណត់សំខាន់
- ប្រតិបត្តិការអសមសម័យ: ការប្រែប្រួលបញ្ជីការងារនៅផ្ទៃខាងក្រោយ និងត្រឡប់មកវិញភ្លាមៗ។ ប្រើ 
copyProjectStatusដើម្បីតាមដានការរីកចម្រើន។ - ចម្លងមួយនៅពេលតែមួយ: មានការប្រតិបត្តិចម្លងតែមួយសម្រាប់អ្នកប្រើម្នាក់អាចសកម្មនៅពេលណាមួយ។
 - កំណត់ទំហំ: គម្រោងដែលមានភារកិច្ចលើស 250,000 មិនអាចចម្លងបាន។
 - ការពឹងផ្អែកលើគ្នា: ជម្រើសខ្លះៗធ្វើការល្អជាមួយគ្នា:
assigneesធ្វើការជាមួយpeople: true(អ្នកដែលបានចាត់តាំងនឹងមិនត្រូវបានចម្លងទេបើគ្មានមនុស្ស)discussionCommentsធ្វើការជាមួយdiscussions: truestatusUpdateCommentsធ្វើការជាមួយstatusUpdates: trueprojectUserRolesធ្វើការជាមួយpeople: true
 - ការកំណត់ឈ្មោះ: ឈ្មោះគម្រោងត្រូវបានកាត់ និង URL ណាមួយត្រូវបានលុបចេញដោយស្វ័យប្រវត្តិ។
 - អាទិភាពបញ្ជី: អតិថិជនសហគ្រាសទទួលបានអាទិភាពខ្ពស់ក្នុងបញ្ជីចម្លង។
 - ការផ្ទុកស្ថានភាព: ស្ថានភាពចម្លងត្រូវបានផ្ទុកសម្រាប់ 6 ម៉ោងបន្ទាប់ពីការបញ្ចប់។