ARKANCE - globální Platinum partner Autodesk ARKANCE | KONTAKT - CZ | SK | EN | DE
Již 10.000+ CAD tipů. Přes 118.000 registrovaných u nás, celkem 1.092.000 registrovaných (CZ+EN), přes 53.000 CAD/BIM bloků. Vyzkoušejte nový přesný Inženýrský kalkulátor. Kompletní příkazy AutoCADu a proměnné AutoCADu 2026.
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

?
CAD diskuze, rady, výměna zkušeností

CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion, 3ds Max, Vault a s dalšími CAD/BIM/PDM aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy ARKANCE (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.arkance-systems.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

Téma uzavřenouložení výkresu s datumem_automatické

 Odpovědět Odpovědět archiv
Autor
Marlowwe Zobrazit panel
Diskutér
Diskutér

Přihlášen: 09.kvě.2008
Používám:
acad 2008
Stav: Offline
Bodů: 45
Přímý odkaz na tuto zprávu Téma: uložení výkresu s datumem_automatické
    Zasláno: 20.kvě.2009 v 09:56
Dobrý den, chtěl bych se zeptat, jestli nejde nějak nastavit, aby se výkres automaticky uložil :  Název výkresu_datum (např.: Půrodys1.NP_090520   -rok/měsíc/den) a aby se uložil jako nový soubor při kliknutí na uložení (i během práce). Hledal jsem to v nastavení, ale nenašel jsem to.

Doufma že jsem to popsal srozumitelně

Díky za rady
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 10:37

Že by to nějak uměl AutoCAD, si neuvědomuji. Teoreticky by šlo udělat makro, které by si vzalo název souboru a doplnilo ho datem. Něco jako:

(strcat (getvar "DWGPREFIX")(SUBSTR (GETVAR "dwgname")
1(-(strlen(getvar "dwgname"))4))"_"(rtos(getvar "cdate")2 0)".dwg")
Problém ale vidím v tom, jak zjistit, jestli původní název už datum obsahuje, nebo ne a podle toho rozhodovat, jestli ho doplnit, nebo přepsat.
Logičtější by asi bylo, kdyby se jméno souboru bralo třeba z razítka. Ale to už záleží na vašich podmínkách.
Vítězslav Seiner

Chrudim
Zpět nahoru
Marlowwe Zobrazit panel
Diskutér
Diskutér

Přihlášen: 09.kvě.2008
Používám:
acad 2008
Stav: Offline
Bodů: 45
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 11:21
Myslel jsem to tak, že se např.:
1. udělá se startovací výkres s Názvem- Půdorys1.NP
2. uloží se a vznikne- Půdorys1.NP_090520
3. uloží se znovu a vznikne- Půdorys1.NP_090520_2 (3, 4.....) pokud se to uloží v ten samý den a pokud se uloží až druhý den- datum se přepíše na- Půdorys1.NP_090521

Tak nějak to udělat, aby se to dalo udělat (rozhodnout), zda uložit jako nový nebo jen přepsat, popřípadě ještě uvážit automatické ukládání (z důvodu ztrát dat, pak by tam bylo vytvořeno x-desítek souborů)

PS: kam se pak to makro zkopíruje.
Díky
Zpět nahoru
johny Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 24.led.2006
Lokalita: ČR (JM)
Používám:
C3D 2024
Stav: Offline
Bodů: 1741
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 11:43
Zkuste toto... 3. bod to nedělá, ani to nedělejte přes Uložit jako... protože nebude fungovat to testování. Asi by to šlo dodělat, kdyby výchozí byl třeba pro dnešek JmenoSouboru_20090520.1.dwg (aby to mělo pevný počet cifer,tečka aby to celé bylo číslo, čili max 9 denních verzí).
Jinak jestli neumíte pracovat s programy, tak kód uložete přes Notepad např jako SaveAs_Date.lsp (lsp nutné) někam... (já dávam do AutoCad/Suppotr/Moje....).
Tento soubor načtěte (Nástroje/Autolisp/Načíst aplikaci...) - načte se teď a také uložte do schránky (Nástroje/Autolisp/Načíst aplikaci/Obsah) - načte se ve všech dalších výkresech.
Program spustíte napsáním SAD (jako SaveAsDate) do příkazového řádku, ale můžete si naň udělat v CUI ikonu nebo zkratku... jak chcete...

Btw. Za "_saveas" je uvedeno "2000" to je verze dwg souboru... pokud používáte 2004, pak to přepiště, když 2007, pak stačí jen "". Možná by šlo aby to udělalo automaticky dle toho co máte uloženo v Možnostech jako výchozí... nevím v jaké proměnné to je, snad mě někdo doplní...

(defun C:SAD ( / Path LastDate)
  (setvar "FILEDIA" 0)
  (if (numberp (setq LastDate (read (SUBSTR (GETVAR "dwgname") (-(strlen(getvar "dwgname"))11) 8))))
    (if (eq LastDate (read (rtos(getvar "cdate")2 0)))
      (command "_save" "" "_y") ;today ; automatic overwritten
      (command "_saveas" "2000" (strcat (getvar "DWGPREFIX")   ;is date, not today, ask for overwrite
                    (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))13))
                    "_"
                    (rtos(getvar "cdate")2 0)
                    ".dwg")))
    (command "_saveas" "2000" (strcat (getvar "DWGPREFIX") ;not date, ask for overwrite
                    (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))4))
                    "_"
                    (rtos(getvar "cdate")2 0)
                    ".dwg")))
  (setvar "FILEDIA" 1)
  (princ)


Upravil johny - 20.kvě.2009 v 12:07
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 12:10

Tak nějak jsem to i myslel. Ještě jde o to, jestli na tom dělá jeden člověk, nebo víc člověků :-). Pak by asi bylo dobré také testovat, zda v úložišti již existuje takový soubor (FINDFILE ...).

   Co se týká načítání definované funkce, preferuji atomatické načítání  (AUTOLOAD) v souboru .mnl. Pak se načítá jen to, co se používá.
Vítězslav Seiner

Chrudim
Zpět nahoru
johny Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 24.led.2006
Lokalita: ČR (JM)
Používám:
C3D 2024
Stav: Offline
Bodů: 1741
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 12:52
Ten (command "SaveAs...") je otevřenej ... přepsání otestuje a nechá uživatele rozhodnout. S více uživateli nemám zkušenosti, ale nebude si to SaveAs... taky nějak hlídat?
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 13:20

Ano - máte pravdu, pokud rezignujete na ten požadavek číslování souborů v jednom dni. IMHO mi ale přijde čistší řešení přes nějaký systém správy dokumnetů.  Ale to je OT.

Vítězslav Seiner

Chrudim
Zpět nahoru
Marlowwe Zobrazit panel
Diskutér
Diskutér

Přihlášen: 09.kvě.2008
Používám:
acad 2008
Stav: Offline
Bodů: 45
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 13:46
jj tak nějak jsem to myslel,

PS: bude na tom pracovat jen jeden člověk

Díky...vyzkouším a kdyžtak se ještě zeptám...Díky
Zpět nahoru
Marlowwe Zobrazit panel
Diskutér
Diskutér

Přihlášen: 09.kvě.2008
Používám:
acad 2008
Stav: Offline
Bodů: 45
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 16:06
jj je to dobrý...ale když dám uložit tak se mi soubor z Půdorys_20090520.1  přejmenuje na Půdorys_2_20090520, nešlo by aby se to přejmenovalo na Půdorys_20090520.2?? (Protože pak se to seřazuje podle pořadí 1,2,3.. a ne podle datumu a pořadí) a když pak dám opět SAD, tak se mě to zeptá jestli chci přepsat---dám N (jako ne) a nefunguje to. Díky za radu
Zpět nahoru
cestár Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 27.říj.2006
Lokalita: Slovensko
Používám:
Civil 3D 2018
Stav: Offline
Bodů: 313
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 17:03
... a neobsahuje to všetko Vault ?
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
Arkance Systems

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Implementujeme řešení Autodesk
Stav: Offline
Bodů: 21898
Přímý odkaz na tuto zprávu Zasláno: 20.kvě.2009 v 22:43
Ano, obsahuje. Navíc řeší i situace, kde je výkres odkazován jako Xref či jiná externí reference, stará se o komentování revizí, odstraňování nepotřebných starších verzí, atd.
 
Přejmenovávání verzí souborů je jen pro hodně zjednodušené jednouživatelské scénáře použití.
Vladimír Michl (moderátor)
ARKANCE CZ - arkance.world
(podpora viz helpdesk.arkance-systems.cz)
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 08:03

Přestože v Autolispu jde udělat kde-co, obávám se, že tohle bude dost tvrdý oříšek. Funkce Findfile totiž neumožňuje zástupné znaky a já momentálně nevím, jak zjistit, jestli v úložišti je už soubor s dnešním datem a libovolným indexem.

V navrženém kódu je navíc chybička - havaruje, pokud ektuální jméno souboru je kratší, jak 11 znaků nebo má právě 11 znaků. Je třeba ošetřit.

třeba:

(defun C:SAD ( / Path ldate)
;  (setvar "FILEDIA" 0)
  (if(<=(strlen(getvar "dwgname"))11)
    (command "_saveas" "2000" (strcat (getvar "DWGPREFIX") (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))4))"_"(rtos(getvar "cdate")2 0)".dwg"))
 
 (if (numberp (setq ldate (read (SUBSTR (GETVAR "dwgname") (-(strlen(getvar "dwgname"))11) 8))))
    (if (eq ldate (read (rtos(getvar "cdate")2 0)))
      (command "_save" "" "_y") ;today ; automatic overwritten
      (command "_saveas" "2000" (strcat (getvar "DWGPREFIX")   ;is date, not today, ask for overwrite
                  (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))13))"_"(rtos(getvar "cdate")2 0)".dwg")))
    (command "_saveas" "2000" (strcat (getvar "DWGPREFIX") ;not date, ask for overwrite
                    (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))4))"_"(rtos(getvar "cdate")2 0)".dwg")))
)
;  (setvar "FILEDIA" 1)
  (princ)

Přepínání FILEDIA je zbytečné.
To, že při odmítnutí přepsání se nic nezapíše, není chyba, ale tak je to napsané - zkuste se zorientovat v kódu.
 
PS. Na tomto místě bych připomenul, že to byl můj návrh, použít nějaký EDM :-)) (Parafráze na Cestu do Liptákova)
Vítězslav Seiner

Chrudim
Zpět nahoru
johny Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 24.led.2006
Lokalita: ČR (JM)
Používám:
C3D 2024
Stav: Offline
Bodů: 1741
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 10:22
Tak jsem to ještě trochu upravil... pridal ty denní verze.
Funguje to tak, že to hledá znaky "_20"... když je najde a zároven za "_" je 8 čísel, pak to vyhodnotí jako datum. Ten pokud je dnešní pak, za k datumu připočte 0.1  a uloží. Pokud není dnešní, pak přidá/nahradí za dnešní datum. Pokud si nakonec názvu (za datum) něco připíšete (třeba "pomocny"), pak to nezachová a uloží novou denní verzi bez tohoto.
Pokud budoucí soubor už existuje, pak se zeptá na přepis- když dáte ano, pak přepíše, když ne tak NIC, a musíte si udělat co chcete sám (typicky, když aktuálně nepracujete v poslední denní verzi - děláte v 20000521.2, ale už existuje .3, pak vám nenabídne .4, ale zeptá se na přepsání .3, a příp. skončí.)
Ps. Máte max 10 denních verzí, snad je to dost :)

(defun C:SAD ( / Path LastDate DatePos)
  (if (and (setq DatePos (vl-string-search "_20" (GETVAR "dwgname")))
       (numberp (setq LastDate (read (SUBSTR (GETVAR "dwgname") (+ DatePos 2) 8)))))
    (if (eq LastDate (read (rtos(getvar "cdate")2 0)))
      (if (= (rtos (- (atof (SUBSTR (GETVAR "dwgname") (+ DatePos 2) 10))
              (atoi (SUBSTR (GETVAR "dwgname") (+ DatePos 2) 10))) 2 1)
        "0.9")
    (princ "\nDosáhl jsi již 10. denní verze, program neumožňuje uložení další.")
        (command "_saveas" "2000" (strcat (getvar "DWGPREFIX")   ;is date, adds new day's version (+0.1)
                    (SUBSTR (GETVAR "dwgname") 1 DatePos)
                    "_"
                    (rtos (+ (atof (SUBSTR (GETVAR "dwgname") (+ DatePos 2) 10)) 0.1) 2 1)
                    ".dwg")))
      (command "_saveas" "2000" (strcat (getvar "DWGPREFIX")   ;is date, not today, ask for overwrite
                    (SUBSTR (GETVAR "dwgname") 1 DatePos)
                    "_"
                    (rtos(getvar "cdate")2 0)
                    ".dwg")))
    (command "_saveas" "2000" (strcat (getvar "DWGPREFIX") ;not date, ask for overwrite
                    (SUBSTR (GETVAR "dwgname") 1 (-(strlen(getvar "dwgname"))4))
                    "_"
                    (rtos(getvar "cdate")2 0)
                    ".dwg")))
  (princ)

PS. Moc jsem to netestoval, to zkuste sám... :)


Upravil johny - 21.kvě.2009 v 10:23
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 10:58
Ta finta s hledáním _20 není špatná. Akorát si uživatel musí nýt vědom, že tento řetězec nesmí použít jinde v názvu.
   Další omezení je v tom, že předpokládáte, že se pracuje vždy s poslední verzí. Havárie nehrozí (saveas upozorní na přepsání).
Vítězslav Seiner

Chrudim
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 12:38
no, pokud by se někomu ještě chtělo v tom pokračovat, tak seznam výkresů stejného jména se stejným datem v názvu by se dal získat třeba:
 
(vl-directory-files(vl-filename-directory (strcat(getvar
"dwgprefix")(getvar "dwgname"))) (strcat(SUBSTR (GETVAR "dwgname") 1 (+(vl-string-search (rtos(getvar "cdate")2 0) (GETVAR "dwgname"))8))"*.dwg"))
Vítězslav Seiner

Chrudim
Zpět nahoru
Seiner Zobrazit panel
CAD/BIM manager
CAD/BIM manager

Přihlášen: 01.říj.2004
Lokalita: ČR (PA)
Používám:
Mechanical 2017, Inventor 2017 a starší
Stav: Offline
Bodů: 1662
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 15:57

Připojené souboryzipuploads/20090521_155638_SAD.zip
Tak kahle by to snad mohlo hrát požadovanou písničku :-)
Vítězslav Seiner

Chrudim
Zpět nahoru
johny Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 24.led.2006
Lokalita: ČR (JM)
Používám:
C3D 2024
Stav: Offline
Bodů: 1741
Přímý odkaz na tuto zprávu Zasláno: 21.kvě.2009 v 16:53
Už to trošku dostává na robustnosti... (což nebyl až tak můj záměr :) Dalším cyklem, ikdyž asi jednodušším, by šlo ošetřit aby to fungovalo i kdyby v názvu bylo "_20" vícekrát...
Jinak nejspíš nedopatřením při kopírování vznikla na 4. řádku od konce chybka, spíš mi to připomíná html než lisp, díky které nefunguje to základní... přidání data souboru bez data.


Upravil johny - 22.kvě.2009 v 08:48
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 3224:VIPChyba při uložení: dokument xxxx.dwg provádí příkaz
Tip 13457:Historie verzí DWG výkresu přímo v AutoCADu.
Tip 5611:VIPDWG TrueView se při otvírání výkresu ptá na uložení šablony.
Tip 8536:Jak nastavit druh pohledu pro náhled ukládaný s RFA rodinou?
Tip 2975:Jak uložit výkres Architectural Desktopu 2004 do formátu DWG 2000?
Tip 9155:Mám zapnuté ukládání do cloudu, ale z AutoCADu nově uložený výkres tam není.


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,441 sekund.