Projectmanagement en modificatie zonder PDM

Hallo

Ik ben op zoek naar een aanpasbare app of macro waarmee ik een compleet project kan kopiëren door min of meer automatisch de bestanden en plannen aan te geven die zijn gewijzigd.

Meer in detail:

1 Ik heb een bestaand product, met bijbehorende onderdelen, samenstellingen en tekeningen, allemaal in de alleen-lezen modus om slechte behandeling te voorkomen.

2 Ik kopieer het hele project met een compositie om mee te nemen met de plannen in een nieuwe "Project" directory met behoud van de structuur.

3 Ik pas alle wijzigingen/creaties van mijn project toe in deze directory die de structuur van het oorspronkelijke product heeft behouden

4 Eenmaal gevalideerd, wil ik deze hele "project"-directory massaal terugzetten naar "product" door de bestanden aan te geven die zijn geëvolueerd of nieuw zijn gemaakt, met de bijbehorende tekening (met dezelfde naam als het bronbestand en in dezelfde map als het). Het beste zou zijn dat als ik de index van een onderdeel verander, het me aanbiedt om de index van de assemblage waarin het wordt gebruikt te wijzigen (maar dat zal in een tweede stap zijn)

5 Ik archiveer de oude bestanden in een andere "archief"-map om de "product"-map niet te vervuilen (met een PDF-verwerking trouwens uit voorzorg)

 

Dat is het doel van mijn aanpak, die lijkt op vereenvoudigd PDM. Het is natuurlijk fase 4 die de meeste problemen oplevert.

Om de zaken nog ingewikkelder te maken, moet ik met SW2011 werken, om compatibiliteitsredenen met sommige gebruikers.

 

Tot op heden heb ik geprobeerd er met projectmanager in te duiken, maar er is geen geautomatiseerde verwerking van de indexwijziging mogelijk omdat de bestanden namen hebben die cijfers en letters vermengen en de detectieregels te gesloten zijn (althans op V2011). Bovendien is er geen opslag in de app, waardoor u de manipulatie later opnieuw kunt uitvoeren of corrigeren.

Met integratie, geen bewerking op de bestandsnamen. Mogelijk om te testen, maar geen bediening.

Ik wendde me tot de "opslaan als"-macro van Lucas Prieur, om geautomatiseerd te worden om een specifieke bestandssyntaxis te verwerken, maar ook om te vinden hoe ik een volledige groep bestanden kan verwerken.

 

Ik vraag daarom om je vaardigheden in meer geavanceerd gebruik van bestaande apps of in het schrijven van macro's om verder te komen in mijn project. Tenzij je een andere methodologie hebt om voor te stellen.

 

Bedankt.

Sebastian

Hallo

 

Ik heb de bestaande macro aangepast om deze op een map uit te voeren, open gewoon een bestand in de map om de macro voor alle stukken in de map uit te voeren.

 

Overweeg om "Microsoft Script Runtime" in te schakelen in VBA "Tools > References".

 

Ik heb de macro ook een beetje aangepast naar aanleiding van onze e-mailuitwisselingen.

 

In de hoop dat het werkt!


enregistrer-sous-masse.zip

Voor je fase 4 (bedankt mieren)  

Waarvoor?

Als u alle bestanden in de map neemt en u deze opent 

2 Ik kopieer het hele project met een compositie om mee te nemen met de plannen in een nieuwe "Project" directory met behoud van de structuur.

 

_donc de ref-mappen zijn hetzelfde als vóór de wijziging, aangezien u deze genoemde wijzigingen gaat aanbrengen

We komen in fase 4

U wijzigt de naam van uw bestand in de naam +1 die u opslaat

Je eindigt met 2 mappen 

1 met originele naam, 1 met originele naam +1

 

je opent je oorsprong opnieuw, je hernoemt het +A (archief)

En je stopt het in je archieven zodra het is afgedrukt

 

Persoonlijk vind ik dat alle veranderingen een hint verdienen, Datum

 

@+ ;-)

Hallo

 

Met het hulpprogramma Integratie kunt u een macro uitvoeren.

 

De tool opent elk document, start de macro, slaat het document op en sluit het.

 

Dit vereenvoudigt de macro.

 

A+

 

3 likes

Als ik het goed begrepen heb:

  • Punt 1 is uw standaard product en daarmee uw basis voor de ontwikkeling van het klantproduct.
  • In punt 2, wanneer u dupliceert in "PROJECT", hernoemt u uw SolidWorks-bestanden?

(Als je niet hernoemt, is het naar mijn mening super gevaarlijk: SolidWorks houdt niet van dubbele bestanden !!)

  • In punt 3: als je een bestaand onderdeel wijzigt (uit je standaard database) betekent dit dat je je onderdeel indexeert, hoe beheer je het dan (met eigenschappen in het onderdeel?) of hernoem je het bestand met "naam van de fichier_indice"?
  • Waarom in punt 4 niet gewoon de map "project" hernoemen naar "product"?

 

Voor "Het beste zou zijn dat als ik de index van een onderdeel wijzig, het me zelf aanbiedt om de index van de assemblage waarin het wordt gebruikt te wijzigen (maar het zal in een tweede stap zijn)": hier denk ik dat we niet moeten dromen, zelfs de EPDM het doet het niet zelf!!

  • 5 Je archiveert: dat wil zeggen dat je een kopie maakt van de "project" directory (met behoud van dezelfde nummering? dus nieuwe duplicaten aanmaken?).

 

 

 

eerste:

De macro van Lucas gooit me als ik de naam van het nieuwe bestand moet invullen (maar  bood me niet aan om een map te kiezen). Ze kwam een keer nadat ze 8 cijfers had gekozen voor de nieuwe naam, maar vroeg me een tweede keer om de naam (7 cijfers deze keer).

Uiteindelijk heb ik mijn bestand, dat 02-P10866 heette, kunnen omzetten in 01234567-1234567. Dat is nog niet zo, sorry. Ik ga proberen erachter te komen hoe ik het zelf kan doen nadat ik alle antwoorden heb bestudeerd (wat ik niet zo veel had verwacht, dat geef ik toe).

Tweede:

Ik begreep de "+1" niet

Wanneer ik mijn take-away compositie van het project naar de productie transporteer, wil ik graag dat hij me elke keer het volgende aanbiedt:

"Dit bestand bestaat al, wilt u het bestaande behouden (keuze 1), beide behouden (archiveer het oude en verhoog de index van het nieuwe)" op de manier van Windows, maar het associëren met de tekeningen met de index die volgt op die van het bronbestand.

Ik hoop verstaanbaar te zijn...

in drie:

Ik had er niet aan gedacht om een macro te gebruiken bij integratie, een pad om te verkennen. Het is jammer dat bestandsnaambewerkingen niet standaard worden aangeboden. Dit hulpprogramma biedt echter niet aan om de procedure op te slaan om deze later toe te passen. Het is een "one shot", althans in 2011.

Ik heb de macro die ik hier gepost aangepast om normaal rekening te houden met uw syntaxis!

 

En u moet de macro met de naam "hoofd" starten om de keuze uit een map te hebben.

 

Edit: Sorry, ik was inderdaad een deel van de code vergeten, deze moet worden aangepast:

 

 

Loop terwijl Len (NewCode) <> 8

 

 

Bij:

 

Loop While IsNumeric(Left(NewCode, 2)) = false en IsNumeric(Mid(NewCode, 5, 5)) = false en mid(NewCode, 3, 2) <> "-p" 

 

 

 

laatste:

In punt 3 verander ik de namen van de bestanden niet. Dus ik heb alle bestanden in tweevoud tussen de werkbasis en de projectbasis. Degenen in de basis zijn alleen-lezen om onzin te voorkomen. Het beheer van de index gebeurt rechtstreeks op de bestandsnaam (syntaxis: producttype op 2 cijfers + streepje + "P" + productsubtype op 1 cijfer + A indien assemblage + onderdeelnummer op 3 cijfers + index (niets of A of B ...) Als het een onderdeelbestand is, geen A, verandert het onderdeelnummer in 4 cijfers + index.

Pas toen ik besloot de oplossing te valideren en toe te passen, wijzig ik mijn index of maak ik een nieuwe code aan door terug te schakelen naar de oorspronkelijke map.

Ik behandel de index niet op eigenschappen (misschien een fout, niet de gewoonte).

Wanneer het in fase 4 wordt teruggebracht naar de oorspronkelijke map, is het hele project een product geworden en kan het eerder gekopieerde project worden verwijderd of gearchiveerd/gecomprimeerd om duplicaten te voorkomen. De archivering van de vorige index is er om de directory niet te vervuilen met oude indexen, het is slechts een bestandsverplaatsing (onderdeel + assemblage + plan).

Een idee dat in me opkomt:

 

  • Punt 1:

Het bestaande product: Alle bestandsnamen (PRT, ASM, DRW) beginnen met "STD_" (voor Standard).

U voegt op elk van de bestanden (asm,prt) de eigenschap "ETAT" toe met slechts 3 mogelijke parameters (het is gemakkelijk te doen vanuit de smartproperties):

  • Standaard
  • Nieuw
  • Gewijzigd

Let op: in uw bestaande product hebben alle bestanden de status "Standaard"

 

  • Punt 2:

Je maakt je take-home compositie door alle bestanden te hernoemen (prt,asm,drw): je vervangt het voorvoegsel "STD_" door het voorvoegsel "PROJET_" (dus geen duplicaten !!) en je slaat ze op in de Project-directory.

 

  • Punt 3:

U voert al uw wijzigingen door.

Als u een nieuw onderdeel aanmaakt: in de eigenschap STATE van het bestand kent u de waarde toe: Nieuw

Als u een onderdeel wijzigt: in de eigenschap STATE van het bestand, kent u de waarde toe: gewijzigd

Als je niets aan het bestand doet.... u raakt niets aan, aangezien het eigendom van de staat in Standard blijft

 

  • Punt 4:

Eenmaal gevalideerd, maak je een compositie om mee naar huis te nemen door alle bestanden te hernoemen (prt, asm, drw): je vervangt het voorvoegsel "PROJET_" door het voorvoegsel "PRODUIT_" (dus nog steeds geen duplicaten en je houdt een archief van je werk bij in projectmodus  !!) en je slaat ze op in de productdirectory.

U kunt dus bulksgewijs afdrukken of DXF's maken via Batchconverter door te filteren via de eigenschap STATE.

U kunt Propertielist gebruiken om al uw bestanden weer te geven en de nieuwe en/of gewijzigde bestanden uit te pakken (maak een tabel met een kolom STATE).

 

Ben ik duidelijk geweest?

Vind je dat goed?

 

 

Deze "staats"-oplossing verleidt me behoorlijk, maar ik heb twee kleine bezwaren:

- Ik kan de namen van de huidige bestanden (die in beslag worden genomen door Excel-macro's of door aankopen denk ik) niet wijzigen. Maar dat voorkomt niets, ik kan gewoon een tijdelijk voorvoegsel toevoegen voor de duur van het project.

- Ik moet de index van alle gewijzigde plannen handmatig wijzigen (tenzij ik automatiseer op de eigenschap "STATE"). Dus terug met de "opslaan als" macro misschien?

Tegelijkertijd denk ik dat ik een automatische oplossing moet vinden om de STATE-eigenschap te wijzigen tijdens overdrachten / creatie om geen mislukking te hebben als deze eigenschap is vergeten in te vullen/te wijzigen voordat deze wordt verwerkt. Ik moet er met een kalm hoofd over nadenken, interessant.

Bedankt.
Sebastian