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? 3252 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1486 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1366 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1455 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1350 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1385 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1352 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1502 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1308 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1385 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1363 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1408 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1360 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1400 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1359 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1372 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1316 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1371 cc13
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1283 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 2077 sherzad
Re: 2 HTML Buttons mit derselben ID von einander unterscheiden? 1387 sherzad


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