giovedì 27 dicembre 2012

Esempio di più operazioni in una store procedure


Il codice seguente è stato testato su di un database Oracle e mostra come si possono eseguire più operazioni in una store procedure puntando su diverse tabelle.
Ci sono esempi di select, update, delete, condizioni e loop.
Si possono portare le seguenti istruzioni anche su di un altro database modificando opportunatamente la sintassi.
(Non sempre vengono utilizzate le stesse istruzioni su db diversi).

CREATE OR REPLACE PROCEDURE TSP.procedure_example(
 typeMarket  IN varchar2,
 inDayMarket   IN varchar2
)

is

selectCursor    sys_refcursor;
rowToUpdate     TSP.tbl_market_1%ROWTYPE;

begin

-- example of condition and select on first table

 IF procedure_example.typeMarket='CONSUMER' THEN
 open selectCursor for
 SELECT TSP.tbl_market_1.*
 FROM TSP.tbl_market_1
 WHERE ((tbl_market_1.field_example_1 = 1);

-- loop example: update for all records of 'select' on second table

LOOP
 fetch selectCursor into rowToUpdate;
 exit when selectCursor%NOTFOUND;

 update  TSP.tbl_market_2 set
 field_example_3=10,
 where   TSP.tbl_market_2.id = rowToUpdate.id;

END LOOP;

close selectCursor;

END IF;

-- example update on first table

update   TSP.tbl_market_1 set field_example_2 = 0
where   day_market = procedure_example.inDayMarket
and     market_ref = procedure_example.typeMarket;

-- example delete on second table

delete   from TSP.tbl_market_2
where   day_market = procedure_example.inDayMarket;

end;

domenica 23 dicembre 2012

Vibrazione telefono in Android

Queste poche righe associate ad un evento in java permettono di far vibrare il telefono per un periodo di tempo.
Non si deve però dimenticare di aggiornare l' AndroidManifest con la uses-permission.

Button btnExample = (Button) findViewById(R.id.btn_example);
btnExample.setOnClickListener(new View.OnClickListener() {
 public void onClick(View v) {
 Vibrator vi = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); 
 vi.vibrate(600); //600 milliseconds
 }
});

Istruzione da implementare nel AndroidManifest
...
 </application>
 <uses-permission android:name="android.permission.VIBRATE"/>
</manifest>

martedì 18 dicembre 2012

Apertura di una nuova Activity in Android

Con poche istruzioni è possibile aprire una nuova Activity in Android; in questo caso il nome è 'NewActivity'.
Prima di effettuare la chiamata, configurare l'activity nell AndroidManifest.xml e creare un layout.
Più in basso alcune righe per eseguire una nuova activity da un pulsante di "Menu".
Intent intentStat = new Intent();
intentStat.setClassName(getPackageName(), getPackageName()+".NewActivity"); 
startActivity(intentStat);

Nuova Activity in un pulsante Menu.
public boolean onCreateOptionsMenu(Menu menu){  
 MenuInflater inflater = getMenuInflater();   
 inflater.inflate(R.menu.menu_newactivity, menu);
 return super.onCreateOptionsMenu(menu);
}

blic boolean onOptionsItemSelected(MenuItem item)
{
 switch (item.getItemId()){
  case R.id.button_example:
   Intent intentSolution = new Intent();
   intentSolution.setClassName(getPackageName(), getPackageName()+".NewActivity"); 
   startActivity(intentSolution);
   return true;
  default:
   return super.onOptionsItemSelected(item);
 }
}

venerdì 14 dicembre 2012

Auricolare bluetooth Nokia BH-104 e Samsung Galaxy S3

Uuuuhh mamma mia alla fine sono riuscito a far connettere il buon vecchio auricolare bluetooth Nokia BH-104 con il Samsung S3.
Credo non solo con l'S3 abbia avuto dei problemini, ma anche con altri device non Samsung. Niente zero la ricerca non trovava il dispositivo.
Sembra proprio che l'auricolare abbia una memoria limitata con il numero delle connessioni dei device (forse non più di due).
La soluzione è la seguente: ho eseguito un reset sull'auricolare premendo, da spento, contemporaneamente il pulsantone grosso per le chiamate e il tasto di accensione per un po' di secondi.
Il led ha cominciato a lampeggiare con il rosso e il verde; eseguo una ricerca con l'S3 et voilà...Nokia BH-104, clicco sul BH-104 e quindi "associazione eseguita".