106 lines
3.4 KiB
C#
106 lines
3.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using SteamWare;
|
|
using System.Drawing.Printing;
|
|
using GMW_data;
|
|
|
|
namespace GMW_UT
|
|
{
|
|
public partial class BCodeCall : System.Web.UI.Page
|
|
{
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
/*************************************************
|
|
* nota funzionamento...
|
|
*
|
|
* se legge BCDL1 --> toglie BCD e manda questo url
|
|
* http://iis02/GMW-UT/BCodeCall.aspx?valore=L1
|
|
*
|
|
****************************************************/
|
|
|
|
string answ = "nd";
|
|
// eventuale log...
|
|
if (memLayer.ML.confReadInt("_logLevel") > 6)
|
|
{
|
|
logger.lg.scriviLog(string.Format("Richiesta stampa barode da rPI:{0}valore: {1}", Environment.NewLine, valore), tipoLog.INFO);
|
|
}
|
|
|
|
// chiamo stampa
|
|
try
|
|
{
|
|
answ = "OK";
|
|
stampaBCode();
|
|
}
|
|
catch (Exception exc)
|
|
{
|
|
logger.lg.scriviLog(string.Format("ERRORE in stampa barode da rPI:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
|
|
answ = "KO";
|
|
}
|
|
|
|
// ripulisco pagina restituita e tolgo html (solo codice OK/KO)
|
|
Response.Clear();
|
|
Response.Write(answ);
|
|
Context.Response.End();
|
|
}
|
|
/// <summary>
|
|
/// valore richiesto tramite URL
|
|
/// </summary>
|
|
public string valore
|
|
{
|
|
get
|
|
{
|
|
// valore EVENTUALMENTE trimmando BCD...
|
|
return memLayer.ML.QSS("valore").Replace("BCD", "");
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// testo da stampare in chiaro
|
|
/// </summary>
|
|
public string testoLabel
|
|
{
|
|
get
|
|
{
|
|
return string.Format(memLayer.ML.confReadString("bcodeLabFormatPI"), DateTime.Now, valore);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// testo in codice 39
|
|
/// </summary>
|
|
public string bCodeLabel
|
|
{
|
|
get
|
|
{
|
|
return string.Format(memLayer.ML.confReadString("bcodeValFormatPI"), DateTime.Now, valore);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// lancio stampa etichetta
|
|
/// </summary>
|
|
protected void stampaBCode()
|
|
{
|
|
// attenzione: page size deve essere uguale su printer e su richiesta!!! 62 x 29 mm = 2.44 x 1.14 pollici
|
|
PaperSize pS = new PaperSize("label", memLayer.ML.confReadInt("bcodeLabelWidth"), memLayer.ML.confReadInt("bcodeLabelHeight"));
|
|
// recupero printer da nome postazione
|
|
string stampante = "";
|
|
try
|
|
{
|
|
stampante = DataProxy.obj.taElPost.getByCod(valore)[0].stampante;
|
|
}
|
|
catch
|
|
{ }
|
|
if (stampante != "")
|
|
{
|
|
// stampo il vero bcode su etichettatrice!!! ATTENZIONE
|
|
bCodePrinter.man.Print(stampante, pS, testoLabel, bCodeLabel, memLayer.ML.confReadInt("bcodeFontBase"));
|
|
}
|
|
else
|
|
{
|
|
logger.lg.scriviLog(string.Format("ERRORE in stampa barode da rPI:stampante non trovata{0}valore: {1}", Environment.NewLine, valore), tipoLog.ERROR);
|
|
}
|
|
}
|
|
}
|
|
} |