Yhdistyksen tarpeisiin olen tekemässä matkalaskulomakkeen tallennusjärjestelmää olemassa olevan Drupal 6 sivuston yhteyteen.
Kysyisin hieman mielipidettä, kuinka homma olisi järkevintä toteuttaa. Tarpeena olisi siis kerätä lomakkeelle suoraan käyttäjän henkilötiedot ja tallentaa ne pysyväksi tiedoksi solmuun (eli että esim. osoite ei muutu jos käyttäjä muuttaa osoitettaan profiilissaan vaan lomake pysyy siinä muodossa kun se tallennettiin). Tämä onnistunee parhaiten luomalla CCK tekstikentät ja hakemalla niihin PHP:llä oletustiedoksi tiedot käyttäjän profiilitiedoista. (Tämän jo sain toimimaan)
SItten pitäisi tehdä erittely matkan kuluista. Jokaista kuluriviä kohden tallennetaan siis matka-aika (datetime from/to), kulkuneuvotyyppi (teksti, alasvetovalikko), vapaateksti selite ja kulu (float). Näitä rivejä pitäisi sitten pystyä lisäämään ad infinitum (no ei ehkä ihan niin pitkälle...) Kuinka tämä olisi järkevintä toteuttaa? Jokainen rivi omaksi solmuksi ja sitten node referencellä liittää ne alkuperäiseen solmuun? Miten tämmöisen CCK-kentän pystyy luomaan suoraan tuosta solmun lisäys tilasta, vai pystyykö? Yritin sopivaa contrib modulia etsiä, mutta pikaisella tukimisella en löytänyt.
Lopuksi pitäisi kulurivien luvut laskea yhteen.
Workflow modulilla sitten rakennetaan työnkulku (hyväksyttäväksi, hyväksytty, maksettu -tyyppinen).
Vai olisiko joku muu järkevämpi / toimivampi ratkaisuehdotus?
Kiitos!
- Kirjaudu tai rekisteröidy kirjoittaaksesi kommentteja
Tuo kulurivien kerääminen
Tuo kulurivien kerääminen pitäisi onnistua CCK:n 3.x versiolla. Siinä yhtenä osana modulihallinnan puolella "Content multigroup".
- Päivitä CCK 3.x versioon
- Aktivoi modulien hallinnasta "Content multigroup"
- Luo sisältötyypille kenttien hallinnasta uusi group, jonka type on "multigroup"
- Siirtele kuluriviin liittyvät asiat tuon groupin alle.
HUOM! CCK 3.x:n toimivuudesta Drupal 6:sen kanssa itselläni ei ole sen tarkempaa muistikuvaa. Ota nyt ainakin hyvät backupit ennen kuin rupeat säätämään
http://www.johu.org
Compound Field
Kiitos neuvosta. En lähde tässä vaiheessa päivittämään CCK v. 3:een koska muita tarpeita sille ei ole ja ehkä sitä joskus siihen seiskaankin joutuu siirtymään...
Sen sijaan päädyin kirjoittamaan custom cck kentän ao. ohjeen pohjalta koska tarve oli varsin simppeli.
http://poplarware.com/articles/cck_field_module