วันอังคารที่ 26 เมษายน พ.ศ. 2559

การ Export Schedule

ในการส่งค่าไปทำการนับวัสดุ หรือ การวางแผนการก่อสร้าง มักจะต้องส่งข้อมูลไป ระบบอื่น ที่เป็นฐานข้อมูล Database การส่ง Text File โดยใช้ Tab เป็นตัวขั้น เป็นระบบที่ง่ายที่สุด

 public static void expSchedule(ExternalCommandData commandData)
        {

            UIApplication uiapp = commandData.Application;
            UIDocument uidoc = uiapp.ActiveUIDocument;
            Autodesk.Revit.DB.Document doc = uidoc.Document;
            string _export_folder_name = "c:/tmp/shedule";
            FilteredElementCollector col
              = new FilteredElementCollector(doc)
                .OfClass(typeof(ViewSchedule));
         // สร้าง List ในการเลือก เมื่อมีหลายตาราง
           List<string> ps =new List<string>();
            foreach (ViewSchedule vs in col)
            {
                ps.Add(vs.Name);
            }
       // เลือก และ ส่งออก ในชื่อ out1.txt
            int idx=PPGenInput.ppSelectItem.doShow(ps.ToArray(), "Select Schedule");
            if (idx >= 0)
            {  

                ViewSchedule vs = (ViewSchedule)col.Where(x => (x.Name == ps[idx])).First();
                ViewScheduleExportOptions opt = new ViewScheduleExportOptions(); 
                Directory.CreateDirectory( _export_folder_name);
                vs.Export(_export_folder_name,  "out1.txt", opt);
             
            }
        
        }

ไม่มีความคิดเห็น:

แสดงความคิดเห็น