مكتبة Go لإنشاء تقارير مخصصة للغاية باستخدام واجهة برمجة تطبيقات REST
ابدأ التجربة المجانيةتتيح لك مجموعة تطوير البرامج السحابية GroupDocs.Assembly لنظام Go تضمين إمكانيات إنشاء مستندات فعّالة في أي تطبيق Go دون الحاجة إلى مكتبات خارجية ضخمة. تعتمد الخدمة بالكامل على السحابة وتتواصل عبر واجهة برمجة تطبيقات REST بسيطة، مما يعني أنك تحتاج فقط إلى اتصال بالإنترنت وبيانات اعتماد واجهة برمجة التطبيقات لبدء إنشاء المستندات.
يتكون سير العمل النموذجي من ثلاث خطوات منطقية:
إعداد قالب - أنشئ ملف Word أو PDF أو HTML أو أي تنسيق مدعوم يحتوي على حقول نائبة وبنى برمجية (حلقات برمجية، جمل شرطية، حسابات). يعمل القالب كمخطط للمستند النهائي.
توفير مصدر بيانات - وفّر بيانات XML أو JSON مطابقة للحقول النائبة. تستخدم مجموعة تطوير البرامج بنية تعبيرات LINQ لربط البيانات بالقالب، مما يسمح لك بإنشاء جداول وقوائم ومخططات ومحتوى ديناميكي فورًا.
٣. تجميع المستند - باستخدام Go SDK، يمكنك تحميل القالب إلى تخزين GroupDocs السحابي، وإرسال طلب تجميع يحدد مسار القالب، ومصدر البيانات، وتنسيق الإخراج المطلوب (DOCX، PDF، HTML، إلخ)، وأخيرًا تنزيل المستند الناتج مباشرةً من استجابة واجهة برمجة التطبيقات.
يتيح هذا النهج إنشاء العقود، والفواتير، وقوائم الشحن، وعروض المبيعات، وأي مستند آخر بالغ الأهمية للأعمال في الوقت الفعلي. كما يدعم دمج المراسلات لإنشاء دفعات من الرسائل الشخصية، وإنشاء الرموز الشريطية، وتصميم خلفية HTML، وإنشاء مرفقات البريد الإلكتروني. جميع العمليات مؤمنة بتشفير SSL/TLS ومصادقة مفتاح واجهة برمجة التطبيقات، مما يضمن عدم مغادرة البيانات الحساسة السحابة دون حماية.
نظرًا لأن العمل الشاق يتم في السحابة، تعمل SDK على جميع أنظمة التشغيل التي تدعم Go (Windows، macOS، Linux) ولا تتطلب سوى خطوة التثبيت القياسية “go get”. لا حاجة إلى برامج إضافية، ولا تثبيتات Office الأصلية، ولا التعامل اليدوي مع تنسيقات الملفات المعقدة - تعمل الخدمة السحابية على تلخيص كل هذا التعقيد، مما يسمح لك بالتركيز على منطق العمل.
يوضح المقطع أدناه كيفية تحميل قالب، وقراءة مصدر بيانات، واستدعاء واجهة برمجة تطبيقات التجميع لإنشاء مستند باستخدام Go.
الخطوات
config.json
.AssembleOptions
مع مسار القالب وتنسيق الإخراج المطلوب.AssembleDocument
واستلام الملف المُجمّع.import (
"os"
"io/ioutil"
"github.com/groupdocs-assembly-cloud/groupdocs-assembly-cloud-go/api"
"github.com/groupdocs-assembly-cloud/groupdocs-assembly-cloud-go/api/models"
)
// 1. Initialise configuration
config, _ := models.NewConfiguration("config.json")
assemblyApi, ctx, _ := api.NewAPIClient(config)
// 2. Upload template
fileName := "Input1.docx"
requestFileContent, _ := os.Open(fileName)
uploadReq := &models.UploadFileRequest{
FileContent: requestFileContent,
Path: ToStringPointer(fileName),
}
_, _, _ = assemblyApi.UploadFile(ctx, uploadReq)
// 3. Read data source
dataFile := "Input2.docx" // can be XML or JSON
data, _ := ioutil.ReadFile(dataFile)
// 4. Prepare assemble options
templateInfo := api.TemplateFileInfo{FilePath: fileName}
assembleOptions := api.AssembleOptions{
TemplateFileInfo: &templateInfo,
SaveFormat: "docx",
ReportData: string(data),
}
// 5. Generate document
output, err := assemblyApi.AssemblyApi.AssembleDocument(ctx, assembleOptions)
if err != nil {
// handle error
}
// `output` contains the generated document