ربات-119007
#python, #telegram_bot
🔢 کد پروژه: 119007📌 عنوان پروژه: رباتربات سرخط زن بورسربات سرخط زن بورس که شبیه اون به اسم چیتا وجود داره با عملکرد و امکانات بیشتربرای سرخط زنی بورس کارگزاری مفید با امکان اضافه کردن کارگزاری ها در آینده5 روز21161#پایتون #python #رباتیک #برنامه_نویسی
توسط خریدار:
اطلاعات بیشتر:
https://parscoders.com/project/620788/ربات-119007
t.me/ParscodersCom
#python, #telegram_bot
🔢 کد پروژه: 119007📌 عنوان پروژه: رباتربات سرخط زن بورسربات سرخط زن بورس که شبیه اون به اسم چیتا وجود داره با عملکرد و امکانات بیشتربرای سرخط زنی بورس کارگزاری مفید با امکان اضافه کردن کارگزاری ها در آینده5 روز21161#پایتون #python #رباتیک #برنامه_نویسی
توسط خریدار:
Hamyarprozheاطلاعات بیشتر:
https://parscoders.com/project/620788/ربات-119007
t.me/ParscodersCom
وارد کردن VCART کردن فایل اکسل مقاطع بتنی به ایتبس وارد کردن مقاطع اکسل به ایتبس با برنامه نویس C# و پایتون
#c_sharp_programming, #python
این خلاصه تجربیات رو براش بفرستید — نکتهی اصلی اینه که راه بهتری هم وجود داره که اصلاً از اکسل/Interactive Database رد نمیشه:
---
## تجربههای پروژه (برای برنامهنویس)
**پیشینه:** تا الان دیتابیسهای بزرگ (ستون مربعی/دایرهای، اسلب، عرشه، فنر شمع، Load Pattern) رو با پایتون (openpyxl) در فایل اکسل میساختیم و با روش **To Excel → Paste Append → From Excel** در Interactive Database Editing ایتبس وارد میکردیم. این روش کار میکنه ولی برای فایلهای بزرگ (۵۰ تا ۲۰۰ هزار ردیف) روی سیستمهای معمولی خیلی کند بود (گاهی ساعتها، گاهی هنگ میکرد).
**مشکل دوم مهمتر:** وقتی فقط جدول هندسه (Concrete Rectangular/Circle) رو وارد میکنیم، آرماتور (جنس AII/AIII، سایز میلگرد، خاموت، Reinforcement to be Checked) اصلاً ست نمیشه و باید جدول Reinforcement Data رو جدا وارد کنیم.
### راهحل واقعی: بهجای اکسل، از CSI OAPI استفاده کنایتبس یک API رسمی COM داره (`CSI.ETABS.API.ETABSObject`) که از پایتون (با کتابخونهی `comtypes`)، C#، یا VBA قابل دسترسیه. با این روش، هندسه + آرماتور در یک تابع و یک اجرا ست میشن، بدون اینکه از منوی Interactive Database رد بشیم — واقعاً "یک کلیک" (اجرای اسکریپت).
توابع کلیدی:```pythonimport comtypes.client
helper = comtypes.client.CreateObject('ETABSv1.Helper')helper = helper.QueryInterface(comtypes.gen.ETABSv1.cHelper)EtabsObject = helper.GetObject("CSI.ETABS.API.ETABSObject") # اتصال به نمونهی باز ایتبسSapModel = EtabsObject.SapModel
# هندسهی ستون مربعیSapModel.PropFrame.SetRectangle("COLUMN_180x180_16Φ16", "C25", 180, 180)
# آرماتور (طولی + خاموت در یک تابع)SapModel.PropFrame.SetRebarColumn( "COLUMN_180x180_16Φ16", # نام مقطع "AIII", "AII", # متریال میلگرد طولی، متریال خاموت 2, 2, # Pattern (Rectangular)، ConfineType (Ties) 4, # Cover 0, 4, 4, # NumberCBars, NumberR3Bars, NumberR2Bars "16", "10", # RebarSize, TieSize 15, # فاصلهی خاموت 2, 2, # تعداد خاموت در هر جهت False # ToBeDesigned=False یعنی Checked)```
برای مقطع دایرهای از `SetCircle` و برای آرماتور دایرهای از `SetRebarColumn` با `Pattern` متفاوت استفاده میشه.
### پیشنهاد عملی برای برنامهنویس1. همون فایلهای اکسلی که ساختیم رو بهعنوان **منبع داده** بخونه (با pandas یا openpyxl) — نیازی نیست دوباره بسازتشون2. برای هر ردیف، یک حلقه بزنه و `SetRectangle`/`SetCircle` + `SetRebarColumn` رو صدا بزنه3. یک دکمه یا اسکریپت بسازه که مستقیم به نمونهی باز ایتبس وصل بشه (`helper.GetObject`) تا کاربر فقط دکمه رو بزنه4. این روش، چون مستقیم با API حرف میزنه نه با UI، باید از نظر سرعت **چند برابر سریعتر** از Paste در Interactive Database باشه
### منابع فنیمستندات رسمی: `docs.csiamerica.com/help-files/etabs-api-2016` — توابع `cPropFrame.SetRectangle`، `cPropFrame.SetCircle`، `cPropFrame.SetRebarColumn`، `cPropMaterial.AddQuick`
توسط خریدار:
اطلاعات بیشتر:
https://parscoders.com/project/620816/وارد-کردن-vcart-کردن-فایل-اکسل-مقاطع-بتنی-به-ایتبس-وارد-کردن-مقاطع-اکسل-به-ایتبس-با-برنامه-نویس-c-sharp-و-پایتون
t.me/ParscodersCom
#c_sharp_programming, #python
این خلاصه تجربیات رو براش بفرستید — نکتهی اصلی اینه که راه بهتری هم وجود داره که اصلاً از اکسل/Interactive Database رد نمیشه:
---
## تجربههای پروژه (برای برنامهنویس)
**پیشینه:** تا الان دیتابیسهای بزرگ (ستون مربعی/دایرهای، اسلب، عرشه، فنر شمع، Load Pattern) رو با پایتون (openpyxl) در فایل اکسل میساختیم و با روش **To Excel → Paste Append → From Excel** در Interactive Database Editing ایتبس وارد میکردیم. این روش کار میکنه ولی برای فایلهای بزرگ (۵۰ تا ۲۰۰ هزار ردیف) روی سیستمهای معمولی خیلی کند بود (گاهی ساعتها، گاهی هنگ میکرد).
**مشکل دوم مهمتر:** وقتی فقط جدول هندسه (Concrete Rectangular/Circle) رو وارد میکنیم، آرماتور (جنس AII/AIII، سایز میلگرد، خاموت، Reinforcement to be Checked) اصلاً ست نمیشه و باید جدول Reinforcement Data رو جدا وارد کنیم.
### راهحل واقعی: بهجای اکسل، از CSI OAPI استفاده کنایتبس یک API رسمی COM داره (`CSI.ETABS.API.ETABSObject`) که از پایتون (با کتابخونهی `comtypes`)، C#، یا VBA قابل دسترسیه. با این روش، هندسه + آرماتور در یک تابع و یک اجرا ست میشن، بدون اینکه از منوی Interactive Database رد بشیم — واقعاً "یک کلیک" (اجرای اسکریپت).
توابع کلیدی:```pythonimport comtypes.client
helper = comtypes.client.CreateObject('ETABSv1.Helper')helper = helper.QueryInterface(comtypes.gen.ETABSv1.cHelper)EtabsObject = helper.GetObject("CSI.ETABS.API.ETABSObject") # اتصال به نمونهی باز ایتبسSapModel = EtabsObject.SapModel
# هندسهی ستون مربعیSapModel.PropFrame.SetRectangle("COLUMN_180x180_16Φ16", "C25", 180, 180)
# آرماتور (طولی + خاموت در یک تابع)SapModel.PropFrame.SetRebarColumn( "COLUMN_180x180_16Φ16", # نام مقطع "AIII", "AII", # متریال میلگرد طولی، متریال خاموت 2, 2, # Pattern (Rectangular)، ConfineType (Ties) 4, # Cover 0, 4, 4, # NumberCBars, NumberR3Bars, NumberR2Bars "16", "10", # RebarSize, TieSize 15, # فاصلهی خاموت 2, 2, # تعداد خاموت در هر جهت False # ToBeDesigned=False یعنی Checked)```
برای مقطع دایرهای از `SetCircle` و برای آرماتور دایرهای از `SetRebarColumn` با `Pattern` متفاوت استفاده میشه.
### پیشنهاد عملی برای برنامهنویس1. همون فایلهای اکسلی که ساختیم رو بهعنوان **منبع داده** بخونه (با pandas یا openpyxl) — نیازی نیست دوباره بسازتشون2. برای هر ردیف، یک حلقه بزنه و `SetRectangle`/`SetCircle` + `SetRebarColumn` رو صدا بزنه3. یک دکمه یا اسکریپت بسازه که مستقیم به نمونهی باز ایتبس وصل بشه (`helper.GetObject`) تا کاربر فقط دکمه رو بزنه4. این روش، چون مستقیم با API حرف میزنه نه با UI، باید از نظر سرعت **چند برابر سریعتر** از Paste در Interactive Database باشه
### منابع فنیمستندات رسمی: `docs.csiamerica.com/help-files/etabs-api-2016` — توابع `cPropFrame.SetRectangle`، `cPropFrame.SetCircle`، `cPropFrame.SetRebarColumn`، `cPropMaterial.AddQuick`
توسط خریدار:
کاربر814008اطلاعات بیشتر:
https://parscoders.com/project/620816/وارد-کردن-vcart-کردن-فایل-اکسل-مقاطع-بتنی-به-ایتبس-وارد-کردن-مقاطع-اکسل-به-ایتبس-با-برنامه-نویس-c-sharp-و-پایتون
t.me/ParscodersCom