Archiv für das Jahr: 2017

Toolbar per Script erzeugen

War mir bis jetzt auch nicht bekannt, aber dank des Beitrages von Franks jetzt schon :^)

// Create Toolbar
string toolbarName = "TEST_Toolbar";
Eplan.EplApi.Gui.Toolbar toolbar = new Eplan.EplApi.Gui.Toolbar();            
toolbar.CreateCustomToolbar(toolbarName, Eplan.EplApi.Gui.Toolbar.ToolBarDockPos.eToolbarFloat, 0, 0, true);

// Add buttons
toolbar.AddButton(toolbarName, 0, "strAction0", @"$(MD_IMG)\Toolbar\MountingPlateHandling\MP_0.jpg", "Tooltip0");
toolbar.AddButton(toolbarName, 1, 0); // Separator
toolbar.AddButton(toolbarName, 2, "strAction2", @"$(MD_IMG)\Toolbar\MountingPlateHandling\MP_90.jpg", "Tooltip2");
// Remove toolbar
toolbar.RemoveCustomToolbar(toolbarName);
Von |2017-11-09T11:16:27+01:002017-08-11|EPLAN, EPLAN-Scripts|

EPLAN 2.7: Scripting Neuerungen

Die Beta läuft ja schon ne Weile und ich hab mich mal hingesetzt und die neuen Action angeschaut. Folgende kamen dazu:

changeLayer
Ändert die grafischen Eigenschaften von Ebenen.
export3D
Exportiert Bauräume in das STEP-Format.
exportNCData
Exportiert NC-Daten
exportProductionWiring
Exportiert Drahtkonfektionierungsdaten in verschiedenen Formaten.
GraphicalLayerTable
Importiert / exportiert Ebenen.
Renumber
Führt eine Nummerierung durch.
XPlaUpdateDetailAction
Detailplanung wird aktualisiert
XPamSelectPart
Artikel aus GUI auswählen
Von |2017-11-09T11:16:27+01:002017-05-22|EPLAN, EPLAN-Scripts|

Multiuserkonflikt erkennen

Vorab: Leider geht das nur per API, nicht im Scripting.

Die Ermittlung der User ist schnell gemacht, hab aber noch einen Dialog dazu gepackt, welcher Infos über die User anzeigt:

public static bool IsMultiUserConflict(Project project, bool showDialog = false)
{
   var currentUsers = project.CurrentUsers.ToList();

   // No conflict
   if (currentUsers.Count <= 1)
   {
      return false;
   }

   // Conflict
   if (showDialog)
   {
      StringBuilder sb = new StringBuilder();
      foreach (var user in currentUsers)
      {
         if (!string.IsNullOrEmpty(user.Name) && !string.IsNullOrEmpty(user.Identification))
         {
            sb.AppendLine(user.ComputerName + " / " + user.Name + " / " + user.Identification);
         }
         else if (!string.IsNullOrEmpty(user.Name))
         {
            sb.AppendLine(user.ComputerName + " / " + user.Name);
         }
         else if (!string.IsNullOrEmpty(user.Identification))
         {
            sb.AppendLine(user.ComputerName + " / " + user.Identification);
         }
         else
         {
            sb.AppendLine(user.ComputerName);
         }
      }
      MessageBox.Show(sb.ToString(), "Multi user conflict", MessageBoxButton.OK, MessageBoxImage.Warning);
   }
   return true;
}
Von |2017-05-03T13:34:52+02:002017-05-04|EPLAN, EPLAN-API|
Nach oben