Deutsches Application Express Forum (ApEx) -- Installation , Engine / SQL , Anwendungen
HTMLDB Engine :  Oracle Apex The fastest message board... ever.
Alles in HTMLDB, Applikationen, Berichte, SQL ... 
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden?
geschrieben von: sherzad (---.hsi15.unitymediagroup.de)
Datum:

Achsoooo, ich verstehe nun in etwa was du meinst...

Aber wie sagt man der URL, welche ID gemeint ist?

Hier meine Anwendung:
[www.dropbox.com]

Wenn ich zwei Requestnamen habe für die Buttons, dann ändert es ja nichts daran, dass ich nicht weiß in welcher Zeile der Button gedrückt wurde, sodass ich diese ID in dieser Zeil ein das verstekcte Feld schreiben kann.

"In der URL übergibst du einen Request-Namen (ausleihen bzw. zurück) und trägst in eine verstecktes Feld die ID der Zeile ein."

Wie ermittele ich die ID der Zeile, wenn ich nur den Requestnamen habe? ich muss ihn ja mit etwas vergleichen können, um dem Update zu sagen, dass genau diese (ID in dieser) zeile gemeint ist.


hier mein Select für den Report "BÜCHERLISTE":

select

'<input type="button" value="Ausleihen" id="||buch.id||" name="||buch.id||" onclick="doSubmit( '''||buch.id||''' )" > ' Ausleihen,
buch.name Titel
, buch.auflage Auflage
, buch.jahr Erscheinungsjahr
, kategorie.name Kategorie
, buch.typ Typ
, LISTAGG(autor.name, ', ') WITHIN GROUP (ORDER BY autor.name)
AS Autor
, buch.MY_USERS_VORNAME_NAME besitzer
, buch.letzter_besitzer
, buch.AUS_DATUM Ausleihdatum
, buch.ruck_datum Rückgabedatum

....



hier mein Select für den Report "MEINE AUSGELIEHENEN BÜCHER":

select
'<input type="button" value="Zurückgeben" id="||buch.id||" name="||buch.id||" onclick="doSubmit( '''||buch.id||''' )" > ' Zurückgeben

, buch.name Titel
, buch.auflage Auflage
, buch.jahr Erscheinungsjahr
, kategorie.name Kategorie
, buch.typ Typ
, LISTAGG(autor.name, ', ') WITHIN GROUP (ORDER BY autor.name)
AS Autor
, MY_USERS_VORNAME_NAME Besitzer
, AUS_DATUM Ausleihdatum
, ruck_datum Rückgabedatum
...



Beide Reports (siehe auch Bild in Dropbox) sind auf Basis der selben Tabelle. Das anzeigen der eigenen bücher habe ich im Report so gemacht, dass die Bücher angezeigt werden, wo die verfuebarkeit 0 (also vergeben) und die Mitarbeiter ID für das Buch eingetragen ist (das ist nur der Fall, wenn der Mitarbeiter das Buch ausgeliehen hat).




-________________________________________________________-

hier sind meine prozesse----
_________________________________________________________--

Ausleihen:

declare

v_user_name varchar (200);
v_user_id pls_integer;

begin

select vorname || ' ' ||name into v_user_name
from my_users
where upper(name) = upper(sys_context('my_context', 'username'));

select userid into v_user_id
from my_users
where upper(name) = upper(sys_context('my_context', 'username'));

---------------------------------------------------------------------------

--Ausgeliehen von
update buch
set MY_USERS_VORNAME_NAME = v_user_name
where v('REQUEST') = buch.id;

--Ausleih-Datum
update buch
set aus_datum = sysdate
where v('REQUEST') = buch.id;

--verfuegbarkeit
update buch
set verfuegbarkeit = 0
where v('REQUEST') = buch.id;

--User_ID eintragen
update buch
set fk_user_id = v_user_id
where v('REQUEST') = buch.id;

--Rückgabedatum löschen
update buch
set ruck_datum = null
where v('REQUEST') = buch.id;

commit;


end;




-------------

zurückgeben:

declare

v_user_name varchar (200);
v_user_id pls_integer;


begin

select vorname || ' ' ||name into v_user_name
from my_users
where upper(name) = upper(sys_context('my_context', 'username'));

select to_number(userid) into v_user_id
from my_users
where upper(name) = upper(sys_context('my_context', 'username'));


--Rückgabedatum hinterlegen
update buch
set ruck_datum = sysdate
where v('REQUEST') = buch.id;


--buch wieder verfügbar machen
update buch
set verfuegbarkeit = 1
where v('REQUEST') = buch.id;

--besitzer löschen
update buch
set MY_USERS_VORNAME_NAME = null
where v('REQUEST') = buch.id;

--die user_id löschen, da er nicht mehr das buch ausgeliehen hat
update buch
set fk_user_id = null
where v('REQUEST') = buch.id;

--letzter besitzer festlegen
update buch
set letzter_besitzer = v_user_name
where v('REQUEST') = buch.id;


commit;

end;




Hoffe du verstehst die Zusammenhänge.

Vielen Dank!



Thema Neugierige geschrieben von geschrieben
2 HTML Buttons mit derselben ID von einander unterscheiden? 3547 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1658 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1527 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1634 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1495 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1581 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1508 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1664 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1484 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1543 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1518 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1592 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1515 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1551 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1505 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1545 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1482 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1550 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1446 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 2281 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1543 sherzad


In diesem Forum dürfen nur registrierte Benutzer schreiben.
This forum powered by Phorum.