<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Symbol LABoratory</title>
	<atom:link href="http://lab.symboltech.hu/feed/" rel="self" type="application/rss+xml" />
	<link>http://lab.symboltech.hu</link>
	<description>Kreativitás és Innováció a szoftveriparban</description>
	<lastBuildDate>Fri, 04 May 2012 16:09:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Piktogramok (és CE) megjelenítése a termékcímkéken</title>
		<link>http://lab.symboltech.hu/2012/05/piktogramok-es-ce-megjelenitese-a-termekcimkeken/</link>
		<comments>http://lab.symboltech.hu/2012/05/piktogramok-es-ce-megjelenitese-a-termekcimkeken/#comments</comments>
		<pubDate>Fri, 04 May 2012 16:08:31 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[ce]]></category>
		<category><![CDATA[Conformité Européenne]]></category>
		<category><![CDATA[piktogram]]></category>
		<category><![CDATA[termékcímke]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=771</guid>
		<description><![CDATA[Ügyféligényként érkezett a megkeresés, hogy a CE (Conformité Européenne = európai megfelelőség) jelölést és néhány más piktogramot lehessen a termékcímkéken megjeleníteni. A grafikával (is) foglalkozó kolléga elkezdte keresni, hogy honnan lehet beszerezni szép (nagy?) méretű piktogramokat. Gyúlékony, Nem érheti víz, Nem pakolható egymásra, stb. A megoldáson már elkezdtünk dolgozni, sőt néhány ügyfél már látta is, [...]]]></description>
			<content:encoded><![CDATA[<p>Ügyféligényként érkezett a megkeresés, hogy a <strong>CE</strong> (Conformité Européenne = európai megfelelőség) jelölést és néhány más <strong>piktogramot</strong> lehessen a termékcímkéken megjeleníteni. A grafikával (is) foglalkozó kolléga elkezdte keresni, hogy honnan lehet beszerezni szép (nagy?) méretű piktogramokat. <strong>Gyúlékony</strong>, Nem érheti víz, <strong>Nem pakolható egymásra</strong>, stb.</p>
<div id="attachment_772" class="wp-caption aligncenter" style="width: 310px"><a href="http://lab.symboltech.hu/wp-content/uploads/2012/05/CE-Zeichen.jpg"><img class="size-medium wp-image-772" title="CE-Zeichen" src="http://lab.symboltech.hu/wp-content/uploads/2012/05/CE-Zeichen-300x195.jpg" alt="" width="300" height="195" /></a><p class="wp-caption-text">CE</p></div>
<p>A megoldáson már elkezdtünk dolgozni, sőt néhány ügyfél már látta is, de a verziókiadásunk után szokásos <a href="http://en.wikipedia.org/wiki/Freeze_(software_engineering)" target="_blank">Code-Freeze</a> (kód pihentetés, nem kell minden nap megváltani a világot) miatt jelenleg még nem teljes a megoldás. Türelmüket kérjük!</p>
<p style="text-align: right;"><em>Annyit elárulhatok, hogy nagyon frappáns, pofon-egyszerű megoldással jelentkezik a Symbol LAB.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/05/piktogramok-es-ce-megjelenitese-a-termekcimkeken/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RunTimer, azaz mennyi ideig fut egy kódrészlet?</title>
		<link>http://lab.symboltech.hu/2012/05/runtimer-azaz-mennyi-ideig-fut-egy-kodreszlet/</link>
		<comments>http://lab.symboltech.hu/2012/05/runtimer-azaz-mennyi-ideig-fut-egy-kodreszlet/#comments</comments>
		<pubDate>Fri, 04 May 2012 15:58:32 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[code speed]]></category>
		<category><![CDATA[code timer]]></category>
		<category><![CDATA[runtime speed]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=765</guid>
		<description><![CDATA[Ha egy program működik és azt csinálja, amit kell, akkor arra azt mondják jó. Hogy a jóból kiváló legyen, ahhoz a minőségre is hangsúlyt kell fektetni. A minőségi program egyik ismérve, hogy nem akad, nincsenek benne lassú műveletek.]]></description>
			<content:encoded><![CDATA[<p>Ha egy program működik és azt csinálja, amit kell, akkor arra azt mondják jó. Hogy a <strong>jóból kiváló</strong> legyen, ahhoz a minőségre is hangsúlyt kell fektetni. A minőségi program egyik ismérve, hogy nem akad, <strong>nincsenek benne lassú</strong> műveletek.</p>
<p>Ahhoz, hogy mérni tudjuk a kód sebességét, sok eszköz áll rendelkezésre, de minden eszköz sokat lassít a programon (közben persze precízen mér!), beépül, beleül minden hívásba&#8230; pedig én csak egy pici kódot, egy metódust szeretnék mérni. Erre kerestünk megoldást az alábbi ismérvekkel:</p>
<ol>
<li>Könnyen be lehessen építeni a forráskódba</li>
<li>Tudjon többféle kimenetet produkálni</li>
<li>Precízen mérje az időt</li>
</ol>
<p>Megint az <strong>IDisposable</strong> lett a barátunk! A using segítségével könnyen beépíthető a kódba, pofon egyszerű a használata, sőt kikommentezni is könnyedén lehet.</p>
<p>Az alábbi minimál kód lett a megoldás:</p>
<pre>public delegate void RunTimerResult(long ticks);
public class RunTimer : IDisposable
{
  private long starttick;
  private RunTimerResult runtimerresult;</pre>
<pre>  public RunTimer() : this(null) { }</pre>
<pre>  public RunTimer(RunTimerResult runtimerresult)
  {
    this.runtimerresult = runtimerresult;
    starttick = DateTime.Now.Ticks;
  }</pre>
<pre>  public void Dispose()
  {
    long endtick = DateTime.Now.Ticks;
    if (runtimerresult != null)
      runtimerresult(endtick - starttick);
    else
      Debug.WriteLine(String.Format("{0}ms", (endtick - starttick) /
                      TimeSpan.TicksPerMillisecond));</pre>
<pre>  }</pre>
<pre>  public static void RunTimerResultMessageBox(long ticks)
  {
    MessageBoxInfo.Show("Time elapsed", String.Format("{0}ms", ticks /
                                        TimeSpan.TicksPerMillisecond));
  }</pre>
<p>Használata például (Console/Debug ablakba írja a futásidőt)</p>
<pre>using(new RunTimer())
  DoSomethingSlowly()</pre>
<p>vagy (MessageBox-szal jeleníti meg a futásidőt)</p>
<pre>using(new RunTimer(RunTimer.RunTimerResultMessageBox))
  DoSomethingSlowly()</pre>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/05/runtimer-azaz-mennyi-ideig-fut-egy-kodreszlet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ékezetes e-mail címek</title>
		<link>http://lab.symboltech.hu/2012/04/ekezetes-e-mail-cimek/</link>
		<comments>http://lab.symboltech.hu/2012/04/ekezetes-e-mail-cimek/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 16:10:58 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[ékezetes domain]]></category>
		<category><![CDATA[ékezetes e-mail cím]]></category>
		<category><![CDATA[ékezetes email cím]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=760</guid>
		<description><![CDATA[Már régóta lehet ékezetes domain neveket regisztrálni, de ennek sokak szerint csak marketing és SEO értéke van. A cégnek biztosan van egy "rendes" domainje, amelyeken a weboldal és a levelező szolgáltatás üzemel és mellette van egy kereső-barát domain ékezettel. Azzal még nem találkoztunk, hogy valakinek ékezetes email címe legyen. Nemrég befutott ez az igény is...]]></description>
			<content:encoded><![CDATA[<p>Már régóta (2004-2005) lehet ékezetes domain neveket regisztrálni, de ennek sokak szerint csak marketing és SEO értéke van. A cégnek biztosan van egy<strong> &#8220;rendes&#8221; domain</strong>je, amelyeken a weboldal és a levelező szolgáltatás üzemel és mellette van egy<strong> kereső-barát domain ékezettel</strong>. Azzal még nem találkoztunk, hogy valakinek ékezetes email címe legyen. Nemrég befutott ez az igény is&#8230;</p>
<div id="attachment_761" class="wp-caption aligncenter" style="width: 290px"><a href="http://lab.symboltech.hu/wp-content/uploads/2012/04/erdotuz.jpg"><img class="size-full wp-image-761   " title="erdotuz" src="http://lab.symboltech.hu/wp-content/uploads/2012/04/erdotuz.jpg" alt="" width="280" height="292" /></a><p class="wp-caption-text">A hosszú ékezetekkel van a legnagyobb baj</p></div>
<p>Körülnéztünk a meglévő megvalósítások között (Gmail, Outlook, böngészők) és azt tapasztaltuk, hogy az ékezetes domain neveket <strong>mindegyik kezeli</strong>, azaz küldéskor a rendszer átalakítja a domain-t, ez alapján megtalálja a megfelelő szervert és oda a leveleket elküldi. A teljes folyamat során sehol sem látszik az ékezetes domainek kódolása. Ez remek hír volt.</p>
<p>&nbsp;</p>
<p><strong>De mi ez a kódolás?</strong></p>
<p>UTF8/Unicode helyett valaki megálmodta, hogy a &#8220;<strong>@levelező.cégemékezetrevált.hu</strong>&#8221; domain-t a levelezőszerverek és webkiszolgálók az alábbi formában azonosítják:</p>
<p><strong>@xn--levelez-8mb.xn--cgemkezetrevlt-6gb0jd.hu</strong></p>
<p>Azaz szavanként kell kódolni és &#8220;xn--&#8221;-lel jelölni, ha ékezetet tartalmaz.</p>
<p>&nbsp;</p>
<p><strong>Mi a helyzet a @ előtti adatokkal?</strong></p>
<p>Ezen lepődtünk meg a legjobban, mert a <strong>példa@symboltech.hu</strong> e-mail címet nem tudtuk megcímezni semmilyen eszközzel. A @ előtti részben nem szerepelhet ékezet? Pedig létre tudunk hozni ilyen felhasználót. A specifikációban nem találtunk erre vonatkozó leírást, talán nem is a domain felügyelet dolga a @ előtti részről dönteni. De erre is <strong>kell valami megoldás</strong>!</p>
<p>&nbsp;</p>
<p><strong>Eredmény</strong></p>
<p>Rászántuk az időt, kerestünk egy <strong>ékezetes domain nevet</strong> a tarsolyunkban (nem árulom el melyik az, mert nemsokára új termékkel jelenünk meg a piacon) és elkezdtük megvizsgálni, majd megoldani a <del>problémát</del> helyzetet.</p>
<p>Sikeres eredmény született, kollégáink megoldották, hogy közvetlen <strong>SMTP</strong> illetve <strong>Symbol Comm Center</strong>-rel történő levél küldés esetén is hibátlanul átküldésre kerülnek az e-mail üzenetek, azt a fogadó oldal levelező programja is helyesen jeleníti meg. Programunk új verziójában (<strong>v1.90</strong>) az ékezetes levél küldés is működőképes lesz, még akkor is, ha a @ előtt van benne ékezet. Köszönjük LAB!</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/04/ekezetes-e-mail-cimek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Időzónák hatása az ügyvitelben</title>
		<link>http://lab.symboltech.hu/2012/04/idozonak-hatasa-az-ugyvitelben/</link>
		<comments>http://lab.symboltech.hu/2012/04/idozonak-hatasa-az-ugyvitelben/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 09:24:17 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[bizonylat dátuma]]></category>
		<category><![CDATA[Greenwich]]></category>
		<category><![CDATA[időzóna]]></category>
		<category><![CDATA[UTC]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=752</guid>
		<description><![CDATA[Próbálták-e már a Symbol Ügyvitelt Londonban elindítani? És Los Angelesben? Londoni kiruccanásunk alatt Londonban elindítottuk és egy ablak fogadott minket, miszerint a számítógépünk órája eltér a szerver idejétől. Miért írja ki és miért fontos ez?]]></description>
			<content:encoded><![CDATA[<p>Próbálták-e már a Symbol Ügyvitelt <strong>Londonban</strong> elindítani? És <strong>Los Angeles</strong>ben? Londoni kiruccanásunk alatt a Temze partján elindítottuk a szoftvert és egy ablak fogadott minket, miszerint a számítógépünk órája eltér a szerver idejétől. Miért írja ki és miért fontos ez?</p>
<p>A szoftver korai verziójában biztonsági célból beépítésre került egy dátum/idő ellenőrzés, hogy a számítógép <strong>rosszul beállított órája</strong> ne okozzon eltérést a bizonylatok folytonosságában. 10 percnyi eltérésre már figyelmeztet, 6 óránál nagyobb eltérés esetén <strong>nem is engedi a programot elindítani</strong>. A felhasználói bejelentések között két alkalmat találtunk, amikor ügyfeleknél megjelent a dátum eltérés információs ablak. Most a saját bőrünkön tapasztaltuk meg és gondolkozni kezdtünk&#8230;</p>
<div id="attachment_755" class="wp-caption aligncenter" style="width: 310px"><a href="http://lab.symboltech.hu/wp-content/uploads/2012/04/tzmap.jpg"><img class="size-medium wp-image-755" title="tzmap" src="http://lab.symboltech.hu/wp-content/uploads/2012/04/tzmap-300x181.jpg" alt="" width="300" height="181" /></a><p class="wp-caption-text">Időzónák</p></div>
<p>Miért ne fordulhatna elő, hogy valaki<strong> külföldről éri el a céges szervert</strong>? Ilyenkor mit jelent, hogy nála 17 óra van, nálunk csak 14? Mi legyen a <strong>&#8220;fő-idő&#8221;</strong>? Jó lenne erre a Greenwich Mean Time, azaz a GMT? Az a logikus döntés született, hogy a Symbol Ügyvitel szerverének ideje lesz a mérvadó. Ezt kell (fizikai helytől függetlenül) GMT+1-re (Budapest, Bukarest) beállítani és minden kliens alkalmazás ehhez fog igazodni.</p>
<p>A gyakorlatban ez azt jelenti, hogy a szerver dátuma/ideje az az érték, amely alapján létrejönnek a bizonylatok, elkészülnek a hozzászólások, naptárbejegyzések. Hogy a felhasználónak ne okozzon gondot a dátum anomália, 30 percnyi eltérés után (vannak fél órás időzónák is!) a főablakon, a<strong> jobb alsó sarokban megjelenik a szerver idő</strong>, amely eltér a számítógép idejétől és attól az időtől is, amit az ablakon kinézve látunk.</p>
<p>Ha valaki magyar időhöz viszonyítva +12 órában van &#8211; azaz nálunk 21h-kor ott már reggel 9h van &#8211; azt fogja látni, hogy a bizonylatok <strong>még &#8220;tegnapi&#8221; dátummal</strong> kerülnek kiállításra, hiszen a szerver ideje szerint még tegnap este 21h van.</p>
<p style="text-align: center;"><strong>A fentiekkel remélhetőleg kihúztuk a &#8220;méregfogát&#8221; a világ időzónáinak és univerzális megoldást adtunk arra, hogy a világon bárhol is vagyunk, a magyar időt tekintjük az ügyvitel alapjának.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/04/idozonak-hatasa-az-ugyvitelben/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MsSQL server 2012: Sequences (végre)</title>
		<link>http://lab.symboltech.hu/2012/02/mssql-server-2012-sequences-vegre/</link>
		<comments>http://lab.symboltech.hu/2012/02/mssql-server-2012-sequences-vegre/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 14:38:28 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[create sequence]]></category>
		<category><![CDATA[mssql]]></category>
		<category><![CDATA[mssql server 2012]]></category>
		<category><![CDATA[sequence]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=749</guid>
		<description><![CDATA[Bár nem használunk MsSQL szervereket, de mégis örömmel tölt el, hogy a Microsoft is lépést tart a világgal és a helyes irányba mozdul.]]></description>
			<content:encoded><![CDATA[<p>Bár nem használunk MsSQL szervereket, de mégis örömmel tölt el, hogy a Microsoft is lépést tart a világgal és a helyes irányba mozdul.</p>
<p>Eddig az automatikus sorszámozást AutoInc mezőkkel (pontosabban egy INT/LONG mező autoinc tulajdonságának beállításával) lehetett elérni. Ezen most változtattak. Példa lehet(ett) az <strong>Oracle</strong> vagy a <strong>Firebird/Interbase</strong>, amely évek óta ezt a technológiát használja.</p>
<p>&nbsp;</p>
<p>Az MsSQL-es megvalósításnak a nyelvi szintaktikája is pont ugyanolyan:</p>
<p><a href="http://www.kodyaz.com/sql-server-2012/number-of-sequences-in-sql-server-2012-using-sequence-objects.aspx">http://www.kodyaz.com/sql-server-2012/number-of-sequences-in-sql-server-2012-using-sequence-objects.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/02/mssql-server-2012-sequences-vegre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ritkán működő 413-as HTTP hiba</title>
		<link>http://lab.symboltech.hu/2012/01/ritkan-mukodo-413-as-http-hiba/</link>
		<comments>http://lab.symboltech.hu/2012/01/ritkan-mukodo-413-as-http-hiba/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 13:04:51 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[http 413]]></category>
		<category><![CDATA[http error]]></category>
		<category><![CDATA[syx]]></category>
		<category><![CDATA[websyx]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=745</guid>
		<description><![CDATA[A HTTP szabvány szerint a HTTP hibakódoknak működniük kellene (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). Sok esetben - főleg tárhely szolgáltatónál működtetett PHP kiszolgálón - nem működik minden hibaüzenet. Ilyen hibaüzenet a 413-as hiba is. Ez akkor jelentkezik (jelentkezne), ha a beállított, fogadható adatmennyiségnél többet akarunk ráerőltetni, feltölteni a szerverre.]]></description>
			<content:encoded><![CDATA[<p>A HTTP szabvány szerint a HTTP hibakódoknak <strong>működniük kellene</strong> (<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html">http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html</a>). Sok esetben &#8211; főleg tárhely szolgáltatónál működtetett PHP kiszolgálón &#8211; nem működik minden hibaüzenet. Ilyen hibaüzenet a<strong> 413-as hiba</strong> is. Ez akkor jelentkezik (jelentkezne), ha a beállított, fogadható adatmennyiségnél <strong>többet</strong> akarunk ráerőltetni, <strong>feltölteni</strong> a szerverre.</p>
<p>A hiba <strong>az esetek 90%-ban elfedésre kerül</strong>, azaz a válasz üzenetben nem érkezik semmi, a böngésző egy üres ablakot jelenít meg. Helyette a 413-as hibát kellene visszaadnia. Így sajnos azok az eszközök, amelyek webrendszeren küldenek adatot, nem értesülnek arról, hogy hiba történt.</p>
<p>WebSyX-ünkben is megvalósítottunk egy <strong>hibakezelő réteget</strong>, amely az elfedett 413-as hibát megkerüli és precízen kezeli. Amennyiben a hibakezelést bekapcsoljuk, úgy a POST adatfelküldésnél <strong>választ kell adni a feltöltésre</strong>. A WebSyX esetében ez egy <strong>OK</strong> szó kell, hogy legyen. Amennyiben nem kapunk választ (a csomag a nagy méret miatt elveszett) úgy hibának érzékeljük. Amennyiben az <strong>OK</strong>-tól eltérő választ ad vissza a szerver, úgy azt a szöveget is hibaüzenetként kezeljük. Ezzel egyéb, szerver oldalon bekövetkező hibákat is jelezni tudunk (MySQL error, PHP error, out of disk space, stb.)</p>
<p style="text-align: center;"><em>WebSyX-ünk új változata letölthető a</em></p>
<p style="text-align: center;"><em><a href="http://syx.symboltech.hu/tanusitott-syx-beepulok/websyx-webaruhaz-kapcsolat/">http://syx.symboltech.hu/tanusitott-syx-beepulok/websyx-webaruhaz-kapcsolat/</a> linkről.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2012/01/ritkan-mukodo-413-as-http-hiba/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fontos PDO módosítások</title>
		<link>http://lab.symboltech.hu/2011/12/fontos-pdo-modositasok/</link>
		<comments>http://lab.symboltech.hu/2011/12/fontos-pdo-modositasok/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 14:43:59 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[binary]]></category>
		<category><![CDATA[módosítások]]></category>
		<category><![CDATA[PDO]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=741</guid>
		<description><![CDATA[Ezúton (is) felhívjuk partnereink figyelmét, hogy adatbázis kezelő rendszerünkben módosításokat hajtottunk végre. Felhasználóinkat ez nem érinti, ők nem vesznek észre semmit, de fontos, hogy azok a partnerek, akik a mi PDO-nkkal dolgoznak, olvassák el figyelmesen a bejegyzést!]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><strong>Ezúton (is) felhívjuk partnereink figyelmét, hogy adatbázis kezelő rendszerünkben módosításokat hajtottunk végre. Felhasználóinkat ez nem érinti, ők nem vesznek észre semmit, de fontos, hogy azok a partnerek, akik a mi PDO-nkkal dolgoznak, olvassák el figyelmesen a bejegyzést!</strong></p>
<p><strong>Text és Binary külön.</strong> A nagy mennyiségű adatok betöltését a rendszer automatikusan késlelteti, de ezen belül is ketté kellett választani a bináris és szöveges jellegű adatok betöltését. Egy olyan adathalmazban, ahol képek és szövegek is vannak, egy-egy szöveg mező tömeges módosítása az összes termék képének betöltését hozta magával. Ez így nem (volt) jó. A módosítás tesztelése folyamatban van.</p>
<p><strong>Adatmódosulás feliratkozások.</strong> Az adatok módosulása esetén a feliratkozott más adatok feleslegesen kaptak nagyon sok értesítést (delegates and events), amely általában csak a kód minőségét rontotta, némely esetben &#8211; komoly &#8211; erőforrás problémákat is okozhatott.</p>
<p><strong>Adatok trimmelése.</strong> Akár ügyviteli, akár egyéb adattárolási oldalról nézzük, logikus lépés az adatok trimmelésének (kezdő szóközök és szöveg közbeni többes szóközök kezelése) beállítása. Felhívjuk partnereink figyelmét, hogy ez az adatátadásban körültekintést igényel, emiatt konzultációt biztosítunk.</p>
<p><em>Hazánkban már több, mint 10 cég használja keretrendszerünket szoftvereinek egyszerűbb és gyorsabb fejlesztésére.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/12/fontos-pdo-modositasok/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hangok a Symbol Ügyvitelben</title>
		<link>http://lab.symboltech.hu/2011/08/hangok-a-symbol-ugyvitelben/</link>
		<comments>http://lab.symboltech.hu/2011/08/hangok-a-symbol-ugyvitelben/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 07:35:05 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[ccs]]></category>
		<category><![CDATA[hang]]></category>
		<category><![CDATA[malév]]></category>
		<category><![CDATA[repülőtér]]></category>
		<category><![CDATA[sípolás]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=736</guid>
		<description><![CDATA[A kezdetek kezdetén elhatároztuk, hogy nem lesznek hangok a Symbol Ügyvitelben, de most eljött ez a pillanat is. Elmesélek egy történetet, ami megvilágítja, hogy miért félek a hangoktól. Pályafutásom kezdetén, a CCS Hungary Kft-nél szoftverrendszert fejlesztettünk, amely a légitársaságokat és a Malév-ot szolgálta ki. Egyik funkciója volt a csomagok gépre rakása. Ha a gép indulása előtt [...]]]></description>
			<content:encoded><![CDATA[<p>A kezdetek kezdetén elhatároztuk, hogy nem lesznek hangok a Symbol Ügyvitelben, de most eljött ez a pillanat is. Elmesélek egy történetet, ami megvilágítja, hogy miért félek a hangoktól.</p>
<p><em>Pályafutásom kezdetén, a CCS Hungary Kft-nél szoftverrendszert fejlesztettünk, amely a légitársaságokat és a Malév-ot szolgálta ki. Egyik funkciója volt a csomagok gépre rakása. Ha a gép indulása előtt negyed órával volt még függőben lévő csomag, akkor különleges figyelmeztetést kellett megjeleníteni.</em></p>
<p><em>Jött a korszakalkotó ötlet, hogy ne csak vizuális, hanem &#8220;audiális&#8221; is legyen a figyelmeztetés. A villogó piros mellett 5mp-enként hangot is adott. Kis sípolós kattanás. A szoftver rendben volt, vittük telepíteni.</em></p>
<p><em>A telepítésnél ott voltam, ezért én kaptam az első &#8220;pofont&#8221;. Az automatikus frissítő rendszer kb. 30 gépre lerántotta az alkalmazást és a felhasználó tényleges feladatától függetlenül minden gépen jelzett a csipogó. 5mp-enként szólalt meg ugyan, de 30 számítógép esetén ez <span style="text-decoration: underline;"><strong>6csipogás/mp</strong></span>-es ütemezést jelentett. Egy nagy terem, ami csipog. A csipogás mellett már sikítottak is a kollégák. Nagy zűrzavart okoztunk <img src='http://lab.symboltech.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
<p>Szóval ezért nem szeretjük a hangokat. De az üzleti felhasználás most megkövetelte. A felugró emlékeztető (Partnerkapcsolat modul) és az átküldött jegyzet (Sticky-note) hangot ad, amikor megjelenik. Reméljük, nem lesz belőle hangorkán.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/08/hangok-a-symbol-ugyvitelben/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SaaS &#8211; Akkor ez most a Symbol Ügyvitel API?</title>
		<link>http://lab.symboltech.hu/2011/06/saas-akkor-ez-most-a-symbol-ugyvitel-api/</link>
		<comments>http://lab.symboltech.hu/2011/06/saas-akkor-ez-most-a-symbol-ugyvitel-api/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 09:36:43 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[intranet]]></category>
		<category><![CDATA[saas]]></category>
		<category><![CDATA[software as a service]]></category>
		<category><![CDATA[symbol api]]></category>
		<category><![CDATA[syx]]></category>
		<category><![CDATA[syx platform]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=732</guid>
		<description><![CDATA[SaaS működésünk megjelenlése előtt számos céggel beszélgettünk róla, hogy ez a működés, akkor most mennyire van kész, ez most akkor gyakorlatilag egy API? A válasz az, hogy ez egy DynamicAPI.]]></description>
			<content:encoded><![CDATA[<p>SaaS működésünk megjelenése előtt számos céggel beszélgettünk róla, hogy ez a működés, akkor most mennyire van kész, ez most akkor gyakorlatilag egy API? A válasz az, hogy <strong>ez egy DynamicAPI</strong>. Teljes API-t nem lehet csinálni, de bármely része percek/órák alatt implementálható.</p>
<p><strong>Mi is az API?</strong></p>
<p>Az API egy függvénytár, amely egy rendszer kívülről elérhető funkcióit engedi megszólítani. Kis vagy közepes funkcionalitás esetén az API annyi megszólítható &#8220;dolgot&#8221; tartalmaz, amennyit két kezünkön meg tudunk számolni. Példaképpen említhetjük a <strong>POP3 </strong>vagy <strong>IMAP </strong>parancsokat, amelyek a levelek letöltését, üzenettörzs letöltését, üzenetek törlését valósítja meg. Nem is kell többet.</p>
<p>Ugyanilyen a <strong>Google Docs </strong>API, amely dokumentumok tárolását szolgálja. A műveleteknél nem is vágyunk többre, mint dokumentum feltöltése, letöltése, törlése, áthelyezése és egy gyors keresőszolgáltatás a dokumentumok tartalmában (ez utóbbi nem is biztos, hogy része a rendszernek, de ha már Google, akkor talán igen)</p>
<p><strong><a href="http://lab.symboltech.hu/wp-content/uploads/2011/06/saas.jpg"><img class="aligncenter size-medium wp-image-733" title="saas" src="http://lab.symboltech.hu/wp-content/uploads/2011/06/saas-300x195.jpg" alt="" width="300" height="195" /></a></strong></p>
<p><strong>SaaS</strong></p>
<p>Egy összetett (nem bonyolult, hanem komplex) rendszer esetében egy teljes API legalább annyi műveletet tartalmaz, mint ahány főmenüpontja van, a paraméterek száma is több tízre tehető. Ez <strong>nyilvánvalóan nem valósítható meg</strong>, pontosabban olyan mértékű ráfordítást igényel, amely nem térül meg.</p>
<p>Ehelyett a dolog méregfogát úgy húztuk ki, hogy egy <strong>önálló programozási platformmal </strong>lehetővé tettük bármilyen API megírását. És mindezt ingyenes eszközökkel. Egy SaaS kompatibilis SyX megírása ahhoz hasonlítható, mintha a Google Docs adatbázisához hozzáférünk (saját adataimat nem rejtsék el előlem) és saját lekérdezéseket írhatunk. A lekérdezéseket egy <strong>szabványos hozzáférési rétegen </strong>(HTTP) kivezetjük, hogy az azt felhasználó kollégáknak ne kelljen valami újat megtanulniuk.</p>
<p><strong>Nézzünk erre egy példát!</strong></p>
<p>Szükségünk lenne egy <strong>termékhez tartozó készletinformációra</strong>. Ezt egy külső program (amely a weboldalt frissíti) fogja felhasználni. Programozási nyelve lehet PHP, Delphi, C++ vagy C# is. Triviális megoldás, ha az adatbázisból közvetlenül lekérdezzük ezeket az információkat. (Ügyfélszolgálatunk támogatást nyújt a szükséges adatok helyének megismerésében). Ez a megoldás azonban közvetlen adatbázis kapcsolat igényel, amely közepes méretű cégeknél nem megoldható. Emellett külön kell azzal foglalkozni, hogy a fent jelölt programozási nyelvek miként kapcsolódnak az adatbázishoz. Helyette valósítsuk meg a dolgot két lépésben!</p>
<p><strong>1. lépés: </strong>SaaS funkció <em>létrehozása</em>.</p>
<p>Hozzunk létre ingyenes fejlesztőeszközzel egy SyX-et, amely SaaS működésre alkalmas. A fenti művelet kiszolgálására készítsünk egy metódust, amely egy termékkódot vár és egy opcionális dátum paraméterrel hívható meg. A metódus &#8220;magja&#8221; kb. 8-12 programsor segítségével a beérkezett kérést ki tudja szolgálni a megfelelő táblákból történő lekérdezéssel. Végeredményként visszaadja az összes raktárt és benne a készletet, ahol a termék eddig megfordult. Fontos megjegyezni, hogy a bemenő URL feldolgozását nem nekünk kell elvégezni, sőt az eredmény formátumát sem nekünk kell meghatározni, azokat a SaaS definiálja (XML lesz).</p>
<p><strong>2. lépés:</strong> SaaS funkció <em>hívása</em>.</p>
<p>Következő lépésben a Symbol Ügyvitel által használt webszervertől le tudjuk kérni a <a href="http://localhost/GetWarehouseBalance">http://localhost/GetWarehouseBalance</a> meghívásával a raktárkészlet információkat. Az URL meghívása szinte programozási nyelv függetlenül megtehető, minden nyelv tartalmaz weboldalról való letöltést megvalósító funkciókat. A visszaadott érték lehet XML formátumú, esetleg JSON, sőt teljes HTML weboldal is, ha az URL-t böngészőn keresztül kívánjuk elérni.</p>
<p>A fenti példán keresztül jól látható, hogy miért nem egy teljes API-t valósítottunk meg, mennyire szerteágazó lenne az ügyfelek minden igényét egy API-ban kielégíteni. Helyette azt a megoldást választottuk, hogy szabványos platformot hoztunk létre, amelyben mindenki a saját API-ját elkészítheti a saját adatai feletti rétegben.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/06/saas-akkor-ez-most-a-symbol-ugyvitel-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Használat Interneten keresztül &#8211; Biztonságos ez?</title>
		<link>http://lab.symboltech.hu/2011/06/hasznalat-interneten-keresztul-biztonsagos-ez/</link>
		<comments>http://lab.symboltech.hu/2011/06/hasznalat-interneten-keresztul-biztonsagos-ez/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 12:01:25 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[biztonság]]></category>
		<category><![CDATA[internetes elérés]]></category>
		<category><![CDATA[port 3050]]></category>
		<category><![CDATA[távoli használat]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=725</guid>
		<description><![CDATA[Rendszerünk használata az infrastruktúra helye megválasztása miatt távolról is lehetőséges. Számos megoldási mód van még a tarsolyunkban, de a legtriviálisabb a direkt Interneten keresztüli csatlakozás.]]></description>
			<content:encoded><![CDATA[<p>Rendszerünk használata az infrastruktúra helye megválasztása miatt távolról is lehetőséges. Számos megoldási mód van még a tarsolyunkban, de a legtriviálisabb a direkt Interneten keresztüli csatlakozás.</p>
<p><strong>Ingyenes megoldás</strong></p>
<p>Adatbázis műveleteink optimalizáltsága miatt egy 2/2 Mbit-es kapcsolaton működő szerver (amely lehet Linux is) alkalmas a rendszer kiszolgálására 15 munkaállomásig. A munkaállomások számának növekedésével felfelé skálázni kell a kapcsolat sebességét.</p>
<p>A kapcsolat nyilvánvalóan publikus, bárki számára elérhető, emiatt lehet hozzá egyszerűen csatlakozni. De nézzük meg, milyen információkat kell tudnunk ahhoz, hogy a kapcsolat létrejöhessen. Szükség van tehát:</p>
<ul>
<li>IP címre vagy host névre</li>
<li>port számra (alapértelmezett 3050 helyett)</li>
<li>adatbázisfájl fizikai helyének megadására</li>
</ul>
<p>Az első kettő a mai számítógépes teljesítménnyel pár óra alatt kideríthető, ha máshogy nem, próbálkozással. A legutolsó azonban olyan mértékű kombinációs lehetőséget jelent, hogy számítógép legyen a talpán, aki ezt kitalálja. Nézzük, milyen példák lehetnek:</p>
<p>Windows-on: c:\SymbolUgyvitelDB\kiscegem\db1\default.database</p>
<p>Linux-on: /var/lib/database/Symbol/CoMPaNY_1580/default.database</p>
<p>Ez utóbbi még betűnagyság érzékeny is. Matematikus kollégák véleménye szerint a lehetőségek száma elég nagy ahhoz, hogy valaki ezt ne találhassa ki. Konkrétan <strong>26*2+10+5</strong> a <strong>49</strong>-ik hatványon, ami egy <strong>3-as és mögötte 89 (!!!) darab nulla</strong>. Szemléltetve ez ennyi:</p>
<h6 style="text-align: center;">1 :</h6>
<h6 style="text-align: center;">30000000000000000000000000000</h6>
<h6 style="text-align: center;">000000000000000000000000000000</h6>
<h6 style="text-align: center;">0000000000000000000000000000000</h6>
<p>Azaz kicsi az esélye, hogy valaki el tudja találni, hol az adatbázisom. Ezt még egy kicsit erősíteni lehet, ha a helyet havonta cseréljük.</p>
<p><strong>Ingyenes, előkészületet igénylő megoldás</strong></p>
<p>Továbbra is ingyenes, de felkészültséget igénylő megoldás a kézzel kiépített SSL tunnel. Ezt például a putty programmal is megtehetjük. Ilyenkor az előző biztonságot növeljük azzal, hogy titkosított csatornán keresztül közlekednek az adatok. A csatorna kiépítése ilyenkor a felhasználó feladata.</p>
<p><strong>Vállalati meegoldás, VPN</strong></p>
<p>Egy igazi megoldás, amely pénzbe kerül a Virtual Private Network. Ez egy virtuálisan kiépített helyi hálózat, amely a számítógépet úgy emulálja, mintha a számítógép az irodában lenne. Ehhez valamilyen VPN szerverre szükség van.</p>
<p><strong>&#8230;nevet még nem írhatok</strong></p>
<p>Egy nemsokára megszülető megoldásunk &#8211; amelynek van már neve, de nem publikus &#8211; célja ponz az lesz, hogy biztonságos és stabil infrastruktúrális megoldást biztosítsunk ügyfeleinknek. Erről majd később.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/06/hasznalat-interneten-keresztul-biztonsagos-ez/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>APEH nyomtatványok &#8211; Valaki ezeket is megtervezte&#8230;</title>
		<link>http://lab.symboltech.hu/2011/04/apeh-nyomtatvanyok-valaki-ezeket-is-megtervezte/</link>
		<comments>http://lab.symboltech.hu/2011/04/apeh-nyomtatvanyok-valaki-ezeket-is-megtervezte/#comments</comments>
		<pubDate>Wed, 20 Apr 2011 13:39:03 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[APEH]]></category>
		<category><![CDATA[ESZGI nyomtatvény]]></category>
		<category><![CDATA[ESZIG]]></category>
		<category><![CDATA[IMP fájl]]></category>
		<category><![CDATA[NAV]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=718</guid>
		<description><![CDATA[Már eddig is sokat hallottunk róla, hogy az ABEV nevű program itt-ott botladozik. Főleg akkor, amikor SZJA bevallás van és az átlag polgár (aki alap informatikai ismeretekkel rendelkezik) nem találja felhasználóbarátnak. Informatikus szemmel furcsa, hogy ott az a Console ablak, amiben a JAVA JRM ír ki nekem információkat. Felhasználói szemmel még furcsább, hogy egy kitöltött [...]]]></description>
			<content:encoded><![CDATA[<p>Már eddig is sokat hallottunk róla, hogy az ABEV nevű program itt-ott botladozik. Főleg akkor, amikor SZJA bevallás van és az átlag polgár (aki alap informatikai ismeretekkel rendelkezik) nem találja felhasználóbarátnak. Informatikus szemmel furcsa, hogy ott az a Console ablak, amiben a JAVA JRM ír ki nekem információkat. Felhasználói szemmel még furcsább, hogy egy kitöltött mező értékébe nem tudok belemódosítani, csak az egész törlésével.</p>
<p>A biztosítékot az csapta ki, hogy az ESZIG nyomtatvány mezőnevei az IMP/XML fájlban ugyanolyan véletlenszerűen vannak, mintha egy jó véletlenszám generátort készítenének az adóhatóságnál. (Bocs, helyesen NAV). Néha láttunk benne szabályszerűséget, de a végén nem sikerült semmilyen elvet ráhúzni. Maradt a kódtáblázat, azaz sor+oszlop-hoz hozzárendeltünk egy számot, ami az azonosítója lett a mezőnek.</p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2011/04/naveszig.jpg"><img class="aligncenter size-full wp-image-719" title="naveszig" src="http://lab.symboltech.hu/wp-content/uploads/2011/04/naveszig.jpg" alt="" width="313" height="205" /></a></p>
<p>Kérdésem az, hogy milyen szabályok alapján határozták meg a mezők azonosítóját. Esetleg több lépcsős módosítás során álltak elő a számok? A lényeg, hogy egyelőre sikerül megvalósítanunk a dolgot, de egy publikus API ennél okosabb/logikusabb is lehetne&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/04/apeh-nyomtatvanyok-valaki-ezeket-is-megtervezte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adatbázisunk felhasználása web-es célokra</title>
		<link>http://lab.symboltech.hu/2011/03/adatbazisunk-felhasznalasa-web-es-celokra/</link>
		<comments>http://lab.symboltech.hu/2011/03/adatbazisunk-felhasznalasa-web-es-celokra/#comments</comments>
		<pubDate>Thu, 17 Mar 2011 10:21:30 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[illesztés]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[webáruház]]></category>
		<category><![CDATA[webshop]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=714</guid>
		<description><![CDATA[A Symbol Ügyvitel adatbázisa egy sokat próbált, ingyenesen diszributálható, de fizetős változattal is rendelkező Firebird 2.1 adatbázis motor. Ez egy SQL adatbázis motor, bár sokan azt gondolják, hogy csak a Microsoft-nak van SQL-je, pedig az alábbiak is SQL motorok (Firebird, PostgreSQL, Oracle, MySQL).]]></description>
			<content:encoded><![CDATA[<p>A Symbol Ügyvitel adatbázisa egy sokat próbált, ingyenesen diszributálható, de fizetős változattal is rendelkező Firebird 2.1 adatbázis motor. Ez egy SQL adatbázis motor, bár sokan azt gondolják, hogy csak a Microsoft-nak van SQL-je, pedig az alábbiak is SQL motorok: Firebird, PostgreSQL, Oracle, MySQL.</p>
<p><strong>Felhasználható-e a Firebird web célokra?</strong></p>
<p>Mivel a Firebird szervernek létezik Linux-os változata (ez is kompatibilis a termékünkkel), telepíthető olyan számítógépre, ahol egy web kiszolgáló (Apache 2.2) is telepítésre került. A két komponens PHP-n keresztük jól megérti egymást. A web-es adatokat lehet Firebird adatbázisban tárolni és onnan kiszolgálni, de nem célszerű.</p>
<p><strong>Alkalmas-e a Symbol Ügyvitel adatbázisa web célokra?</strong></p>
<p>Amennyiben WEB célok alatt olyan működési módot értünk, ami néhány felhasználó számára az összes adat irányába elérhetőséget biztosít, akkor a válasz IGEN. Példa lehet erre egy Ticketing rendszer, ahol cégének ügyfelei belépnek a web-es felületre, ahol azonosítják magukat, majd megnézhetik, hol tart a rendelésük vagy a kért javításuk. Ennek kiszolgálására rendszerünk alkalmas.</p>
<p style="text-align: center;"><em>Természetesen UTF8/Unicode üzemmódban tároljuk a szöveges adatokat,<br />
</em><em>így web-es környezetben sem merülhetnek fel ékezet problémák.</em></p>
<p style="text-align: left;"><strong>Alkalmas-e a Symbol Ügyvitel adatbázis portál célokra?</strong></p>
<p>Ha portál célokra használnák a Symbol Ügyvitel terméktörzsét, NEM javasoljuk a használatot. Egy portál egyetlen oldalának felépítése során sok (&gt;10) lekérdezés fut le. Köztük termékképek, termékcsoportok, készletinformációk, stb. Ezek kiszolgálására nem elég a Firebird adatbázis kezelő. <strong>Nem erre találták ki.</strong> Pláne, ha 10-20 konkurens felhasználót feltételezünk az oldalon, akik eszeveszetten kattintgatnak egy termék után kutatva.</p>
<p><strong>Az adatbázis állandó?</strong></p>
<p>Külön ki kell térni arra, hogy a Symbol Ügyvitel adatbázisa NEM állandó. Fenntartjuk magunknak a jogot, hogy adatbázisunk formátumát átalakítsuk. Általában bővíteni szoktuk a tárolandó adatok körét, ritkán használunk új mezőként valami olyat, amit kötelező kitölteni (NOT NULL), illetve kivételes esetben szüntetünk csak meg mezőket. A fentiek figyelembe vételével kicsi az esély, hogy egy jól megírt lekérdezés egy új verzióban ne fusson le, de elképzelhető.</p>
<p style="text-align: center;"><em>Az adatbázis formátumáért külső felhasználási célból felelősséget nem tudunk vállalni,<br />
</em><em>még akkor sem ha adatbázisunk nyitott, a felhasználók adatait nem rejtjük el.</em></p>
<p style="text-align: left;"><strong>Akkor mi a megoldás?</strong></p>
<p>Sok helyen (&gt;50) jó megoldást jelent egy saját webáruház működtetése saját adatbázis motorral és ehhez egy illesztőfelület megvalósítása. Mikből lehet választani?</p>
<ul>
<li>osCommerce</li>
<li>Joomla + VirtuaMart webáruház motor</li>
<li>Saját fejlesztés (PHP, Java, stb.)</li>
</ul>
<p>Az illesztőfelületre nemsokára elkészül az általános megvalósításunk, aminek segítségével minden webfejlesztő saját webes megoldását (vagy valamilyen ingyenes megoldást) hozzáilleszthet a Symbol Ügyvitelhez. Ehhez cégünk közreműködésére nincs szükség. Szabadon letölthető WebSyX beépülőnk (nemsokára elérhető) szabadon tesztelhető, az általa küldött XML fájlok nyílt formában elérhetőek.</p>
<p style="text-align: center;"><strong>További információk: <a title="syx.symboltech.hu" href="http://syx.symboltech.hu" target="_blank">syx.symboltech.hu</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/03/adatbazisunk-felhasznalasa-web-es-celokra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QuickSort &#8211; ismét felfedeztük</title>
		<link>http://lab.symboltech.hu/2011/03/quicksort-ismet-felfedeztuk/</link>
		<comments>http://lab.symboltech.hu/2011/03/quicksort-ismet-felfedeztuk/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 20:51:43 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[qsort]]></category>
		<category><![CDATA[quick sort]]></category>
		<category><![CDATA[rendezés]]></category>
		<category><![CDATA[sort]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=709</guid>
		<description><![CDATA[Elméleti szinten oktatják a rendező algoritmusokat. Sok geek (megszállott) ennek jelentősséget is tulajdonít, pedig már nincs nagy jelentőssége. Gondoltuk a múlt hétig.]]></description>
			<content:encoded><![CDATA[<p>Elméleti szinten oktatják a rendező algoritmusokat. Sok geek (megszállott) ennek jelentősséget is tulajdonít, pedig már nem számít. Gondoltuk a múlt hétig.</p>
<p>Elmúltak azok az idők, amikor 64kB RAM állt rendelkezésre és nagyon hatékony, gyakorlatilag kihegyezett algoritmust kellett írni mondjuk 200 dolgozó bérszámfejtési adatainak kezelésére. És nem mindenki tudta ezt megcsinálni.<br />
Jelenleg az igazán sok adatot <strong>adatbázisokban </strong>kezeljük, <strong>nem számít a memória</strong>, a szerverben legyen sok.</p>
<p>A fejlesztők pedig 4-6 éve (Java-sok régebben) már túlléptek azon, hogy a numerikus analízisben megismert elveket kelljen ismerniük, hogy használható programot készítsenek. <strong>Mert beköszöntött a keretrendszerek kora. </strong>Ebben minden általánosan használt funkció már megírásra került, sőt eszközök is vannak arra, hogy a hiányzó részeket se tudjuk rosszul megírni (Generics, Interface, etc.)</p>
<p>Jó lenne ha emlékeznék, de nem fog menni. Valamikor a keretrendszer által támogatott rendező algoritmusok (Generic List Sort()) helyett sajátot készítettünk. <em>(Ennek oka, hogy a BindingList-ben nincs sort, de ez mellékes). </em>A saját pedig &#8211; minden bizonnyal &#8211; &#8220;<strong>pár napig jó lesz kipróbálni</strong>&#8221; szemlélet alapján egy gyors buborék rendezés lett. 4 sor, lehetetlen tévedni. Működött is. <strong>Majd a pár napból egy év lett.</strong></p>
<p>Nem is lett volna baj, minden szépen működött, az SQL szerver rendesen kezelte a 80.000 terméket ügyfelünknél. Egészen addig, míg a 80.000 termék több, mint <strong>5000 (!!!) gyártó</strong> alá került besorolásra. Ekkor a termékkiválasztó ablak megnyitása 30-50mp-et vett igénybe. A konzulens kollégák jelezték, hogy ez nem fatális hiba, emiatt nem kell azonnali verziót közzétenni, de minket mégis izgatott a dolog&#8230;</p>
<p><img class="aligncenter" title="QSort" src="http://ozark.hendrix.edu/~burch/cs/151/test/ch04-bigo/qsort-recur2.png" alt="Quick Sort" width="250" height="226" /></p>
<p>És kb. egy órába telt, mire kiderült, hogy nem az adatbázis műveletek lassúak, nem is az 5000 gyártó combobox-ba feltöltése <em>(valóságban más felületi elem, de példaképpen legyen combobox)</em>, hanem valahol belül egy adatátadás. És ekkor jött a homlokhoz csapás. A bubble-sort 5000 elem esetén statisztikailag <strong>5000 x 2500 = 12.5M </strong>összehasonlítást végez és ennyi cserét is, ha kell. Ennek pedig ideje van. Egész számok helyett objektumok esetén még inkább.</p>
<p>A dolog sikerrel zárult, mert 3 órányi munka után a<strong> keretrendszerünk egy operáción esett át </strong>és a gyomor <em>(körülbelül ez felel meg a rendező algoritmusoknak) </em>újra egészségesen viselkedik. Persze újra felidézve tanulmányainkat rájöttünk, hogy a már rendezett adatokat a QSort nem is rendezi be újra, azaz még hatékonyabb lesz a működés.</p>
<p>Kis adatmennyiségek esetén nincs szerepe a fentieknek, de ott sem árt egy kis performancia-tuning.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/03/quicksort-ismet-felfedeztuk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Konkurencia elemzés &#8211; Ki honnan veszi az ötleteket?</title>
		<link>http://lab.symboltech.hu/2011/02/konkurencia-elemzes-ki-honnan-veszi-az-otleteket/</link>
		<comments>http://lab.symboltech.hu/2011/02/konkurencia-elemzes-ki-honnan-veszi-az-otleteket/#comments</comments>
		<pubDate>Fri, 18 Feb 2011 21:24:12 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[konkurencia]]></category>
		<category><![CDATA[másolás]]></category>
		<category><![CDATA[verseny]]></category>
		<category><![CDATA[versenytárs]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=696</guid>
		<description><![CDATA[Van, aki kíváncsiságból és van aki tudatosan pásztázza a konkurenciát. Pontosabban hívjuk versenytársnak! A végére kiderül, hogy miért inkább azzal a jelzővel illetjük, ami egy futóversenyre jellemző.]]></description>
			<content:encoded><![CDATA[<p>Van, aki kíváncsiságból és van aki tudatosan pásztázza a konkurenciát. Pontosabban hívjuk versenytársnak! A végén kiderül, hogy miért inkább ezzel a jelzővel illetjük őket. Mi is néha napján körbenézünk.</p>
<p><strong> </strong></p>
<p><strong>És, hogy mit látunk?</strong></p>
<ul>
<li>Van olyan cég, amely 2009. év közepe óta nem jelentetett meg hírt magáról. A saját weboldalán! <strong>Leszálló ág</strong>, vélelmezhető, hogy csökkenő Incoming Cash-sel rendelkeznek&#8230;</li>
<li>Van, aki szépen csendben fejleszt, 2 havonta kiad egy új verziót, benne apróbb gombok, kis kényelmi funkciók. Lelkes csapat, <strong>Csendes folyó</strong>, 1-et fizet x-et kap (x&gt;=3) akcióval&#8230;</li>
<li>Van régi motoros, régi V12-es. Sokat fogyaszt (termékkövetés), már nem annyira hatékony és a kasztni is itt-ott kopott. <strong>Slussz</strong>kulcsának pörgetésével, kapuzárás előtti sofőrjével még bejön néhány hölgynek&#8230;</li>
<li>Van, aki újként indult, rögtön v3.0-ként jelzi rendszerét. Szépen felépített koncepció, egyszerű kezelhetőség, 4 számjegyű árak. (És valahol máshol már látott működési modell, ismerős MsSQL instance név, ablakok) <strong>Naturalisztikus bulvártermék</strong>, csak bírja ügyfélszolgálattal&#8230; szurkolunk.</li>
<li>És még sokan mások&#8230;</li>
</ul>
<p><strong> </strong></p>
<p><strong>Ki mutat újat?</strong></p>
<p>Örömmel tölt el minket az a fellelhető irányvonal, hogy tudunk még nekik is újat mutatni. Több megvalósult fejlesztésünk köszön vissza a versenytársak termékeiben. A maguk módján. Biztos, hogy nem napi szinten foglalkoznak velünk. Ez nem is lenne jó. De néha észreveszik, hogy mit csináltunk és ötletet merítenek belőle/belőlünk.</p>
<p>Több forrásból értesültünk, hogy fejlesztéseinket elemzik is. Tudjuk, hogy az egyik cég a Symboogle és a Symbol Suggest megoldásainkat nem tartja jó ötletnek. Mások a jelenlegi CRM+ rendszerünkre ráharaptak, jelenleg 12 hónapos fejlesztési feladatként még kicsit halogatják. (Nemsokára CRM+ rendszerünk még nagyobb tudású lesz)</p>
<p>Fontos megjegyezni, hogy <strong>ez nem tilos</strong>, sőt jó. Mert <strong>előre viszi a világot.</strong> És két dolgot bizonyít számunkra:</p>
<ol>
<li>Jó úton haladunk, ötleteink <strong>nem csak számunkra</strong> bírnak értékkel.</li>
<li>Többedik alkalommal elemezve azt, ahogy minket követnek, azaz <strong><span style="text-decoration: underline;">INNOVATÍV PIACVEZETŐK</span></strong> vagyunk.</li>
</ol>
<p><strong> </strong></p>
<p><strong>Mitől versenytárs?</strong></p>
<p>Itt álljon egy kis magyarázat arra vonatkozóan, hogy mitől <strong>versenytársak</strong>. A konkurens ugyanazt adja <strong>más köntösben</strong>, talán apróbb paramétereiben eltérően (nagyobb internet sávszélesség, nagyobb GB, +25% a samponos flakonban, ugyanaz a mobiltelefon olcsóbban WiFi nélkül), de <strong>végeredményben ugyanarra jó</strong>. Itt azonban versenytársakról beszélünk, akik egy pályán haladnak, versenyeznek. De <span style="text-decoration: underline;">nem ugyanazzal a járművel mennek</span>, sőt valaki tankkal tör előre, van aki versenybiciklivel hagyja le a tankot a kanyarban.</p>
<p style="text-align: center;"><strong>De nincs célszalag, nincs győztes, nincs a legjobb. Ez egy folyamatos verseny&#8230;</strong></p>
<p>Van, aki 100m után hagyja abba, van, aki fut még 3 kört és valaki lefutja a fél-maratont. Mert mást akar elérni a pályán, a piacon.</p>
<p>Emiatt nem a megtett körök (=megszerzett ügyfelek) száma a fontos, sokkal inkább a futás stílusa és főleg az, hogy ki fut legelöl, kit követnek a többiek. Mi ezek szeretnénk lenni, sőt mi ezek vagyunk. Jelenleg. Lehet, hogy jön egy új versenyző, tele erővel és ötletekkel. De addig maradunk elöl. Köszönjük a megtisztelő figyelmet!</p>
<p><strong><a href="http://lab.symboltech.hu/wp-content/uploads/2011/02/FollowMeRear400.jpg"><img class="aligncenter size-full wp-image-697" title="FollowMeRear400" src="http://lab.symboltech.hu/wp-content/uploads/2011/02/FollowMeRear400.jpg" alt="" width="400" height="266" /></a></strong></p>
<p><strong>Kérem kövessenek!</strong></p>
<p style="text-align: center;"><em> </em></p>
<p style="text-align: center;"><em>ps: régi feladvány a &#8217;80-as évekből</em></p>
<p style="text-align: center;"><em>&#8220;<strong>Hányadik leszel, ha futóversenyen megelőzöd a második helyezettet?</strong>&#8221;<br />
Általános válasz, hogy első, de a helyes válasz a második <img src='http://lab.symboltech.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/02/konkurencia-elemzes-ki-honnan-veszi-az-otleteket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EU adószám ellenőrzési hiba</title>
		<link>http://lab.symboltech.hu/2011/02/eu-adoszam-ellenorzesi-hiba/</link>
		<comments>http://lab.symboltech.hu/2011/02/eu-adoszam-ellenorzesi-hiba/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 08:23:10 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[adószám]]></category>
		<category><![CDATA[ellenőrzés]]></category>
		<category><![CDATA[EU]]></category>
		<category><![CDATA[közösségi adószám]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=691</guid>
		<description><![CDATA[Ennyire lehet megbízni az EU adószám nyilvántartó rendszerben.]]></description>
			<content:encoded><![CDATA[<p>Ennyire lehet megbízni az <strong>EU adószám nyilvántartó</strong> rendszerben.</p>
<p style="text-align: center;"><a href="http://lab.symboltech.hu/wp-content/uploads/2011/02/eu-adoszam2.png"><img class="size-full wp-image-693  aligncenter" title="eu-adoszam2" src="http://lab.symboltech.hu/wp-content/uploads/2011/02/eu-adoszam2.png" alt="" width="280" height="210" /></a></p>
<p>Tegnapi nap folyamán érkeztek a bejelentések, hogy az EU közösségi adószámok ellenőrzése nem mindig jó. Megvizsgálva azt láttuk, hogy az URL megváltozott. De mint kiderült, nem csak az URL, hanem az adatok formátuma is megváltozott. De erről sajnos nem kaptunk értesítést.</p>
<p>Ez azért zavaró, mert egy szolgáltatást veszünk igénybe, amelyet továbbadunk ügyfeleink felé. És ők joggal panaszkodnak.</p>
<p><strong>Tapasztalat, hogy a SaaS-ként emlegetett szolgáltatásokban azért annyire nem érdemes megbízni!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/02/eu-adoszam-ellenorzesi-hiba/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mi is követünk el hibákat &#8211; Verzió történet egyik bejegyzése önmagáról</title>
		<link>http://lab.symboltech.hu/2011/01/mi-is-kovetunk-el-hibakat-verzio-tortenet-egyik-bejegyzese-onmagarol/</link>
		<comments>http://lab.symboltech.hu/2011/01/mi-is-kovetunk-el-hibakat-verzio-tortenet-egyik-bejegyzese-onmagarol/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 11:29:23 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[mulasztás]]></category>
		<category><![CDATA[szoftverkiadás]]></category>
		<category><![CDATA[telepítés]]></category>
		<category><![CDATA[verzió]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=688</guid>
		<description><![CDATA[A fenti bejegyzés nem is készülhetett volna el, ha a Symbol Ügyvitel nem tartalmaz havi szinten 20-30 újdonságot, változást. Ennek ez az ára :)]]></description>
			<content:encoded><![CDATA[<p>Sajnos mi is követünk el hibákat. Egyik volt főnököm szerint csak az nem hibázik, aki nem dolgozik. Mi dolgozunk&#8230;</p>
<p><strong>Nem fatális, banális hibát ejtettünk.</strong> A verzió történet azt a célt szolgálná, hogy minden felhasználó információt kapjon a változásokról. Sok partnerünknél a rendszergazda csak akkor telepíti az új verziót (pedig pofon egyszerű az upgrade), ha van benne valami fontos vagy súlyos javítás.</p>
<p>Legutolsó verziónkban a <strong>verzió történet ablak nem jelent meg</strong>. A működése pofon egyszerű, nem is tudtuk mire vélni a hibát, majd 4 perc alatt megláttuk a hiba okát: a kiadás előtt pár perccel, amikor a helyesírást még egyszer megnézzük végső lépésként, egy <strong>&amp;</strong> jelet tettek a kollégák az XML fájlba (Drag&amp;Drop), amely a changelog adatait tartalmazza. Az XML parser működése ismert, de nem programozók szerkesztik a changelog-ot. Fene gondolta volna&#8230;</p>
<p>Új verziónk első hibabejegyzése az lesz, hogy &#8220;Nem jelent meg a verzió történet&#8221;. Addig is partnereink megértését kérjük a hiba miatt &#8211; <img src='http://lab.symboltech.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  és javasoljuk nekik a <a href="http://mit-hogyan.symboltech.hu/2011/01/1-66-48-4030-as-verzio-ujdonsagai/">http://mit-hogyan.symboltech.hu/2011/01/1-66-48-4030-as-verzio-ujdonsagai/</a> linkeket, ahol ugyanazokat az információkat láthatják.</p>
<p><em>A fenti bejegyzés nem is készülhetett volna el, ha a Symbol Ügyvitel nem tartalmaz havi szinten 20-30 újdonságot, változást. Ennek ez az ára <img src='http://lab.symboltech.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2011/01/mi-is-kovetunk-el-hibakat-verzio-tortenet-egyik-bejegyzese-onmagarol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Miért van ma a &#8217;4000&#8242;? Hogyan épülnek fel a verziószámok?</title>
		<link>http://lab.symboltech.hu/2010/12/miert-van-ma-a-4000-hogyan-epulnek-fel-a-verzioszamok/</link>
		<comments>http://lab.symboltech.hu/2010/12/miert-van-ma-a-4000-hogyan-epulnek-fel-a-verzioszamok/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 13:25:13 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[frissítés]]></category>
		<category><![CDATA[kiadás]]></category>
		<category><![CDATA[verzió]]></category>
		<category><![CDATA[verziószám]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=686</guid>
		<description><![CDATA[Ha ma kiadnánk a Symbol Ügyvitel új verzióját, akkor a 4000-es számot kapná a verziószám végén: 1.62.44.4000. Hogy miért? Mert ma van az évezred 4000. napra, 4000 nap telt el 2001. január 1-e óta.]]></description>
			<content:encoded><![CDATA[<p>Ha ma kiadnánk a Symbol Ügyvitel új verzióját, akkor a 4000-es számot kapná a verziószám végén: 1.62.44.4000. Hogy miért? Mert ma van az évezred 4000. napra, 4000 nap telt el 2001. január 1-e óta.</p>
<p style="text-align: center;"><strong>Verziószámaink felépítése a következő (<span style="text-decoration: underline;">x.y.z.w</span>)</strong></p>
<p><strong>X: Főverzió száma</strong>, amely jelenleg 1. Nagy szoftver ugrást tervezünk jövő év közepén (bár eddig sem ugrottunk kicsiket), akkor fogjuk kettesre módosítani.</p>
<p><strong>Y: Alverzió</strong>, amely a főverzión belüli újdonságokat tartalmazza. Azok a cégek, akik részt vesznek partnerprogramunkban és már a kiadás előtti verziókat is megkapják, általában kapnak páratlan verziót is, de a hivatalos verzióink mindig párosak (1.60, 1.62, 1.64 nemsokára)</p>
<p><strong>Z: Adatbázis verziószáma</strong>. Amikor olyan jellegű változtatás történik (az utolsó egy évben gyakran), amikor szükség van új adatbázis működésre, a számot változtatva az adatbázis automatikusan frissül.</p>
<p><strong><span style="text-decoration: underline;">W: Ez a cikk fő témája, a 2001. jan.1 óta eltelt napok száma</span></strong>. Ez a szám egyértelműen azonosít egy program kiadást, azaz a kinyomtatott számla alján látható szám alapján tudjuk, hogy melyik napok adtuk ki azt a verziót, amivel a számlát nyomtatták.</p>
<p>4000 napja élünk a 21. században, a Symbol Ügyvitellel pedig lehetősége van arra, hogy 21. századi ügyviteli rendszert használjon.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/12/miert-van-ma-a-4000-hogyan-epulnek-fel-a-verzioszamok/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Miért jelenik meg 3 hetente frissítés?</title>
		<link>http://lab.symboltech.hu/2010/12/miert-jelenik-meg-3-hetente-frissites/</link>
		<comments>http://lab.symboltech.hu/2010/12/miert-jelenik-meg-3-hetente-frissites/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 07:48:48 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[2011]]></category>
		<category><![CDATA[gyári szám]]></category>
		<category><![CDATA[gyáriszám]]></category>
		<category><![CDATA[kiadás]]></category>
		<category><![CDATA[konkurrencia]]></category>
		<category><![CDATA[szoftver]]></category>
		<category><![CDATA[technológia]]></category>
		<category><![CDATA[új generációs]]></category>
		<category><![CDATA[verseny]]></category>
		<category><![CDATA[versenytárs]]></category>
		<category><![CDATA[verzió]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=678</guid>
		<description><![CDATA[Legutóbbi nyílt napunkon Fehér Péter, több sikeres vállalkozás tulajdonosa kérdezett minket arról, hogy miért jelenik meg három hetente Symbol Ügyvitel frissítés. Elégedett felhasználóként nem is érti, mire föl a frissítési ablak.]]></description>
			<content:encoded><![CDATA[<p><strong>Legutóbbi nyílt napunkon Fehér Péter, több sikeres vállalkozás (<a href="http://www.uzletitervek.hu" target="_blank">www.uzletitervek.hu</a>, stb.) tulajdonosa kérdezett minket arról, hogy miért jelenik meg három hetente Symbol Ügyvitel frissítés. Elégedett felhasználóként nem is érti, mire föl a frissítési ablak.</strong></p>
<p><em>Minden kérdésére készségesen válaszolt Balázs Csaba fejlesztési vezetőnk, aki talán a legkompetensebb a témában.</em></p>
<p><strong>FP: Miért ilyen gyakran?<br />
</strong>BCS: Röviden? Mert képesek vagyunk rá.</p>
<p><strong>FP: És kicsit hosszabban?<br />
</strong>BCS: Van mit és tudjuk, hogy hogyan. Általában 3-4 heti gyakorisággal gyűlik össze annyi újdonság, hogy érdemes legyen egy csomagként megjelentetni. Próbálkoztunk már kéthavi kiadással, de olyan mennyiségű volt az újdonság, hogy két nyílt napon tudtuk csak bemutatni a programot. Pontosítok, a program újdonságait.</p>
<p><strong>FP: Ennyi javítanivaló van?<br />
</strong>BCS: Újdonságokat említettem az előbb is. Újdonságok teszik ki a fejlesztés 75-80%-át. Van benne javítás is, ezek általában apróbb felhasználói visszajelzések, nem komoly hibák. És igen, több, mint 3/4-e újdonság. Ezek vagy a programunk újdonságai, vagy valóban ügyviteli újdonságok.</p>
<p><strong>FP: Valóban folyamatos a fejlesztés?<br />
</strong>BCS: A jó szoftver sosincs kész. Ahhoz a programhoz nem készülnek új fejlesztések, amelyet nem használnak. Nálunk, a folyamatos használatból adódóan mindig merülnek fel igények.</p>
<p><strong>FP: És ezeket a programba beépítitek?<br />
</strong>BCS: Mindig mosolyogni szoktam a felhasználói igényeken, persze nem gúnyosan. Elmondhatjuk, hogy nagyon ritka a valóban új igény. A programunk alapja egy négy generációt megélt ügyviteli rendszer, amelyet cégünk egy akvizíció során már magáénak tudhat. Ezen a négy verzión már nagyon sokat tapasztaltunk. Legyen szó általános igényekről vagy speciális üzleti folyamatról, a nagy részük már tervbe van véve nálunk. Azaz nemsokára a polcról tudjuk kiszolgálni az olyan igényeket is, mint a munkaruha kihordási idő nyilvántartása. Tavaly év végén 2011.decemberéig volt meg a fejlesztéi tervünk, van mit csinálni.</p>
<p><strong>FP: És most?<br />
</strong>BCS: 2012. Karácsonya is munkával fog telni <em>(nevet)</em></p>
<p><strong>FP: Érdemes akkor még várnom 24 hónapot?<br />
</strong>BCS: Dehogy! A termékünk a maga nemében már megjelenése után jól állta a sarat, mert szükség volt valami modern rendszerre. Az akkori rendszerek 6-10 éve készültek, ebből adódóan legalább 7-11 éves technológiával. Felkevertük az állóvizet. A termék egy évvel a megjelenése után jól szerepel, számos funkciójában lekörözte versenytársait.</p>
<p><strong>FP: De ha még nálatok is vannak fejlesztési tervek, akkor más, 6-8 éves termékekben ezek miért nem találhatóak meg?<br />
</strong>BCS: Megtalálhatóak. A maguk módján. Minden rendes ügyviteli szoftver megvalósítja az évek során összegyűlt funkciókat, de azok vagy ügyfél igények alapján készültek &#8211; ügyviteli szakértelem nélkül &#8211; vagy csak fejlesztői gondolatokat figyelembe véve. Ez pedig a valóságtól messze van. De egy még fontosabbat kiemelnék, a precizitást. Minden dolgot több féle módon megvalósíthatunk, de kevés termék van, ami a felhasználói kényelmet és a legapróbb igényt is megvalósítja. Mi erre törekszünk, azaz hogy legyen élmény az ügyvitel!</p>
<p><strong>FP: Mondasz erre egy példát?<br />
</strong>BCS: Jó példa a gyári szám kezelés. Minden szoftverterméknek része, de vajon használható-e? Nálunk nem az a cél, hogy a gyári számok a számlán megjelenjenek, hanem valóban ki tudjam mutatni, hogy milyen gyári szám hányszor és mikor fordult meg nálam. És ezt még Symbol-osan megspékeljük azzal, hogy termékenként a gyári szám bevitele maszkolható. Azaz mobiltelefonoknál nem tudunk nem 15 jegyű IMEI számot beírni, nem tudjuk elgépelni.</p>
<p><strong>FP: Azt hiszem, erre mondjátok, hogy innovatív<br />
</strong>BCS: Meg az egészre, amit itt csinálunk. 80% gondolkodás, 20% munka.</p>
<p><strong>FP: Elején említetted, hogy tudjátok a hogyant is. A konkurencia nem tudja?<br />
</strong>BCS: Pontosítsunk. Nem szeretem a konkurencia szót. Azt sugallja, hogy egy van, aki a legjobb és a végén is csak egy maradhat. Inkább használjuk a versenytárs szót, hiszen verseny azért van.</p>
<p><strong>FP: Szóval, a versenytársak nem ismerik a hogyant?<br />
</strong>BCS: Mindenki ismeri a saját hogyanját. A miénk lehetővé teszi, hogy 3-4 hetente kiadjunk egy verziót, amely az ország több száz számítógépén tökéletesen frissül &#8211; még soha nem volt ezzel kapcsolatban hiba &#8211; és megoldást szállít a problémákra. Sokáig terveztük a saját rendszerünket, a cél pont az volt, hogy könnyen tudjunk hozzáilleszteni, könnyen lehessen bővíteni.</p>
<p><strong>FP: Említetted, hogy problémák vannak&#8230;<br />
</strong>BCS: Mindenkinek, Neked is, ha valami nem működik vagy nem elég hatékony, akkor az probléma. A remek ötleteidet rajtad kívül álló okok miatt nem tudod megvalósítani, a fránya számítógép vagy a számlatömb a szűk keresztmetszet. Ezek a problémák, amikre megoldást nyújtunk. Valódi megoldásokat.</p>
<p><strong>FP: Mik a jövőbeni tervek?<br />
</strong>BCS: Decemberben is marad a 3 heti gyakoriság, sőt egy kicsit bele is húzunk, két kiadás is lesz. Amíg a többiek pihennek, addig mi dolgozunk, mert az ügyvitel a szenvedélyünk. <em>(nevet)</em> Ismét 42 újdonságra jut 13 javítás, módosítás, lesz benne iparági újdonság is, mint amilyen a Symboogle volt. De erről többet majd a szoftverkiadáskor.</p>
<p><strong>FP: 2012 decemberében folytatjuk a beszélgetést?<br />
</strong>BCS: Ismételjük meg gyakrabban! Büszkék vagyunk a munkánkra, ezt kívánjuk továbbra is csinálni. Nagyon jó visszajelzések érkeznek. A kedvencem a: &#8220;<span style="text-decoration: underline;">Hol voltak maguk idáig???</span>&#8220;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/12/miert-jelenik-meg-3-hetente-frissites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Típus létrehozása futásidőben &#8211; RuntimeTypeFactory</title>
		<link>http://lab.symboltech.hu/2010/11/tipus-letrehozasa-futasidoben-runtimetypefactory/</link>
		<comments>http://lab.symboltech.hu/2010/11/tipus-letrehozasa-futasidoben-runtimetypefactory/#comments</comments>
		<pubDate>Sat, 06 Nov 2010 23:49:03 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[IL]]></category>
		<category><![CDATA[MSIL]]></category>
		<category><![CDATA[property]]></category>
		<category><![CDATA[RuntimeTypeFactory]]></category>
		<category><![CDATA[TypeFactory]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=675</guid>
		<description><![CDATA["Azok a programozók, akik a régen "szabványos", úgynevezett procedurális programozáson nevelkedtek egy évtizede megtanulták az objektumorientált programozást. Mert meg kellett." - graffity 2004-ből.
]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;Azok a programozók, akik a régen &#8220;szabványos&#8221;, úgynevezett procedurális programozáson nevelkedtek egy évtizede megtanulták az objektumorientált programozást. Mert meg kellett.&#8221;</em> - graffity 2004-ből.</p>
<p>Aztán, amikor a Java 1.1 beköszöntött és hozta a java.lang.reflect névteret, akkor néztünk nagyokat, hogy mi értelme van egy osztályt felderíteni futásidőben? Pláne, amikor programozás közben ott vannak a property-k és metódusok. Aztán csak-csak hasznát vettük, de a címben említett megoldásra még rémálmunkban sem gondoltunk volna. De a Symbol LAB összefogott és megoldotta ezt is&#8230;</p>
<p><strong>1. Keretrendszer</strong></p>
<p>Adott a keretrendszerünk, amiben sok helyen használjuk a reflection-t. Például listáink szűrőablakai nem léteznek önállóan, hanem szűrőosztályokat definiálunk (közös ősből interfésszel). Az osztályok feltérképezésével pedig létre tudjuk hozni a szűrőablakokat. Ha találunk egy property-t, aminek DateInterval a típusa, akkor kikerül két dátumválasztó, amelyek a property-be írnak, onnan olvasnak (DataBinding). A property-k attributumokkal rendelkeznek, amik magyar nevet adnak a mezőknek.<br />
Szép, kidolgozott technológia, meg is számolom&#8230; (2 perc eltelik itt) &#8230; a Symbol Ügyvitelben jelenleg 103 szűrőobjektum van.</p>
<p><strong>2. Probléma</strong></p>
<p>A feni technológiát kényelmes használni, nem is akarunk letérni az útról, de egyedi fejlesztéseink (SyX) esetén külső fájlból jönnek az osztályok, amelyek nem az 1-es pontban említett ősosztályból származnak. Mi tévők legyünk? Az ügyfél várja a megoldást, ki kell valamit találni&#8230;</p>
<p><strong>3. (Egyelőre még nem elégséges) Megoldás</strong></p>
<p>Fejlesztési vezetőnk pénteken már említett valamit, de csak hétfőn állt elő az ötlettel. Ha fel lehet térképezni egy osztályt, akkor miért ne CSINÁLNÁNK egyet, csak úgy futásidőben. Még jó, hogy van Google, mert volt honnan információt meríteni, de hideg zuhanyként ért minket a találatok listája.<br />
Létre lehet hozni típust futásidőben, de a következő lépéseket kell végiggondolni:</p>
<ol>
<li>Minden property-nek van egy lokális változója</li>
<li>Kell, hogy legyen egy GET és egy SET metódus, amely a property értékét olvassa és írja a lokális változóba/változóból.</li>
<li>A GET és SET metódusok törzse, lényegi része nem C#-ban írandó, hanem a köztes MSIL/IL nyelven, ami a .NET-ben megvalósított Assembly nyelv, azaz szinte gépi kód.</li>
</ol>
<p>Itt egy kis szomorúság jött, mert ilyet nem oktatnak az egyetemen, nem hétköznapi a felhasználási módja és nincs róla még &#8220;MSIL 21 nap alatt&#8221; könyv sem.<br />
Viszont a fejlesztési vezetőnk ellentmondást nem tűrve a megoldás útjára lépett és saját maga valósította meg. Ilyenkor kis csendet szokott kérni, de ez most 4 órán át tartott. Megszületett egy már működő megoldás. De ez még nem volt elég jó a felhasználásra.</p>
<p><strong>4. Jó megoldás</strong></p>
<p>További 2 órába telt, hogy megoldjuk a problmát, ugyanis az újonnan létrehozott osztálynak van egy őse, amelynek van egy két paraméteres konstruktora. MSIL nyelven kellett megoldani a base konstruktor hívását és a paraméterek átadását.</p>
<p><strong>5. Összefoglalás</strong></p>
<p>Keretrendszerünk már ezt is tudja, általános osztályt csináltunk belőle, amelyet alant közzéteszünk. Hogy izgalmasabb legyen, egy hibát rejtettünk el benne a 32-33. sor környékén. Aki a hibát kijavítja, +1 pontot kap önéletrajza leadásakor a HR osztálytól. <img src='http://lab.symboltech.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<pre>using System;
using System.Collections.Generic;
using System.Data;
using System.Reflection.Emit;
using System.Reflection;</pre>
<pre>namespace SymbolTech.BaseProject.FrameWork.Common
{
    public class RuntimeTypeFactory
    {
        private TypeBuilder tb;</pre>
<pre>        public RuntimeTypeFactory(string assemblyname, string typename, Type baseclass)
        {
            AssemblyName assname = new AssemblyName(assemblyname);
            AssemblyBuilder assbuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(assname, AssemblyBuilderAccess.RunAndSave);
            ModuleBuilder mb = assbuilder.DefineDynamicModule(assname.Name, assname.Name + ".dll");</pre>
<pre>            tb = mb.DefineType(typename, TypeAttributes.Public, baseclass);</pre>
<pre>            //Override base constructors
            if (baseclass != null)
                foreach (ConstructorInfo ci in baseclass.GetConstructors())
                {
                    List&lt;Type&gt; types = new List&lt;Type&gt;();
                    foreach (ParameterInfo pari in ci.GetParameters())
                        types.Add(pari.ParameterType);</pre>
<pre>                    ConstructorBuilder ctor = tb.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, types.ToArray());</pre>
<pre>                    ILGenerator ctorIL = ctor.GetILGenerator();
                    for (byte i = 0; i &lt; types.Count; i++)
                        ctorIL.Emit(OpCodes.Ldarg_0, i);
                    ctorIL.Emit(OpCodes.Call, ci);
                    ctorIL.Emit(OpCodes.Ret);
                }
        }</pre>
<pre>        public static CustomAttributeBuilder CreateCustomAttributeItem(Type attributetype, Type[] constructorparametertypes, object[] constructorparameters)
        {
            return new CustomAttributeBuilder(attributetype.GetConstructor(constructorparametertypes), constructorparameters);
        }</pre>
<pre>        public void AddProperty(string name, Type type)
        {
            AddProperty(name, type, null);
        }</pre>
<pre>        public void AddProperty(string name, Type type, params CustomAttributeBuilder[] customattributes)
        {
            if (String.IsNullOrEmpty(name) || type == null)
                return;</pre>
<pre>            PropertyBuilder newprop = tb.DefineProperty(name, System.Reflection.PropertyAttributes.HasDefault, type, null);
            if (customattributes != null)
                foreach (CustomAttributeBuilder cab in customattributes)
                    if (cab != null)
                        newprop.SetCustomAttribute(cab);</pre>
<pre>            FieldBuilder newfield = tb.DefineField(name.ToLower(), type, FieldAttributes.Private);
            MethodAttributes getSetAttr = MethodAttributes.Public | MethodAttributes.SpecialName | MethodAttributes.HideBySig;</pre>
<pre>            MethodBuilder methodget = tb.DefineMethod(String.Format("get_{0}", name), getSetAttr, type, Type.EmptyTypes);
            ILGenerator methodgetil = methodget.GetILGenerator();
            methodgetil.Emit(OpCodes.Ldarg_0);
            methodgetil.Emit(OpCodes.Ldfld, newfield);
            methodgetil.Emit(OpCodes.Ret);</pre>
<pre>            MethodBuilder methodset = tb.DefineMethod(String.Format("set_{0}", name), getSetAttr, null, new Type[] { type });
            ILGenerator methodsetil = methodset.GetILGenerator();
            methodsetil.Emit(OpCodes.Ldarg_0);
            methodsetil.Emit(OpCodes.Ldarg_1);
            methodsetil.Emit(OpCodes.Stfld, newfield);
            methodsetil.Emit(OpCodes.Ret);</pre>
<pre>            newprop.SetGetMethod(methodget);
            newprop.SetSetMethod(methodset);
        }</pre>
<pre>        public Type CreateType()
        {
            return tb.CreateType();
        }
    }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/11/tipus-letrehozasa-futasidoben-runtimetypefactory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drag&amp;Drop Reloaded</title>
		<link>http://lab.symboltech.hu/2010/10/dragdrop-reloaded/</link>
		<comments>http://lab.symboltech.hu/2010/10/dragdrop-reloaded/#comments</comments>
		<pubDate>Fri, 15 Oct 2010 22:17:52 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[drag]]></category>
		<category><![CDATA[drag and drop]]></category>
		<category><![CDATA[drag&drop]]></category>
		<category><![CDATA[draganddrop]]></category>
		<category><![CDATA[drop]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=668</guid>
		<description><![CDATA[Több mint 180 óra kutatómunka után újraélesztettük a sokak által hanyagolt Drag&#038;Drop technológiát, amely a Windows 2.0 óta van jelen életünkben.]]></description>
			<content:encoded><![CDATA[<p>Több mint 180 óra kutatómunka után újraélesztettük a sokak által hanyagolt Drag&amp;Drop technológiát, amely a Windows 2.0 óta van jelen életünkben.</p>
<p>A Symbol LAB több változat eldobása után egy felhasználói élményekben és főleg operatív használhatóságban élenjáró megoldással örvendezteti meg jelenlegi és jövőbeni ügyfeleit.</p>
<p>A végleges fejlesztés sok munkaórát igényel még, várhatóan jövő év első heteiben jelenik meg, de egy pár képernyőképpel már most is szolgálhatunk, a tervezési fázis állapotáról.</p>
<p><em><a href="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneA.png"><img class="aligncenter size-full wp-image-669" title="dropzoneA" src="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneA.png" alt="" width="647" height="572" /></a></em></p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneB.png"><img class="aligncenter size-full wp-image-670" title="dropzoneB" src="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneB.png" alt="" width="579" height="414" /></a></p>
<p><em> </em></p>
<p><em><a href="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneC.png"><img class="aligncenter size-full wp-image-671" title="dropzoneC" src="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneC.png" alt="" width="900" height="650" /></a></em></p>
<p><em> </em></p>
<p><em><a href="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneD.png"><img class="aligncenter size-full wp-image-672" title="dropzoneD" src="http://lab.symboltech.hu/wp-content/uploads/2010/10/dropzoneD.png" alt="" width="900" height="650" /></a></em></p>
<p><em>A képlopó program nem volt képes az egérkurzort a képernyővel együtt menteni, ezért nem látható. De várjuk csak ki a végét! Nem csak sima egérkurzorról lesz szó&#8230; Fogd és vidd újraTÖltve!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/10/dragdrop-reloaded/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fogd és vidd újraélesztve</title>
		<link>http://lab.symboltech.hu/2010/10/fogd-es-vidd-ujraelesztve/</link>
		<comments>http://lab.symboltech.hu/2010/10/fogd-es-vidd-ujraelesztve/#comments</comments>
		<pubDate>Sun, 10 Oct 2010 20:25:32 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[drag]]></category>
		<category><![CDATA[drop]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=663</guid>
		<description><![CDATA[A Microsoft a DragAndDrop technikát már a Windows korai verzióiban megjelentette. A Win95-től igazi értelmet nyert, aztán valahogy eltűnt...]]></description>
			<content:encoded><![CDATA[<p>A Microsoft a DragAndDrop technikát már a Windows korai verzióiban megjelentette. A Win95-től igazi értelmet nyert, aztán valahogy eltűnt&#8230;</p>
<p>Valljuk be, sok bosszúságot okozott egy fájl drag&amp;drop-pal való mozgatása. vagy lemásolódott vagy átmozgatódott vagy parancsikon készült hozzá a leglehetetlenebb helyeken, az asztalon vagy a dokumentumok mappában. Ezért inkább nem használtuk.</p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2010/10/dragdrop.png"><img class="size-full wp-image-666 alignnone" title="dragdrop" src="http://lab.symboltech.hu/wp-content/uploads/2010/10/dragdrop.png" alt="drag and drop" width="546" height="274" /></a></p>
<p>De egy programon belül az adatok mozgatásának kézenfekvő módszere. Lenne. Ha a böngészők nem lehetetlenítették volna el a technikát. Eddig egy logikus használati módját láttam a böngészőben. LogMeIn parancsikont helyezhettem az asztalomra. Persze az Internet Explorer 3 kérdést tett fel előtte, hogy valóban lemondtam-e az életemről, stb.</p>
<p>Külön csoportot hoztunk létre, hogy a drag&amp;drop-ot felélesszük. Még keressük a megfelelően kézreálló és informatív megoldást, hogy a felhasználó tudja, mi fog történni, ha elengedi az adatokat (akarom mondani elengedi az egég bal gombját). Eddig a proof-of-concept tanulmánymunkáink pozitív sikerről számoltak be. Nemsokára be fogjuk vezetni a darg&amp;drop széles körű használat, de a teljes kidolgozottsághoz még idő kell.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/10/fogd-es-vidd-ujraelesztve/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Központosított telepítés</title>
		<link>http://lab.symboltech.hu/2010/09/kozpontositott-telepites/</link>
		<comments>http://lab.symboltech.hu/2010/09/kozpontositott-telepites/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 10:25:17 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[parancsikon]]></category>
		<category><![CDATA[telepítés]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=659</guid>
		<description><![CDATA[Sok rendszergazda álma, hogy ne kelljen minden számítógépen frissíteni egy alkalmazást, de ne is veszítsük el a desktop programok kényelmes felületét. Már eddig is volt megoldás arra, hogy a számítógépek automatikusan frissítsék magukat (akár internet kapcsolat nélkül is), de most még egyszerűbb lett a rendszergazdák dolga.
]]></description>
			<content:encoded><![CDATA[<p>Sok rendszergazda álma, hogy ne kelljen minden számítógépen frissíteni egy alkalmazást, de ne is veszítsük el a desktop programok kényelmes felületét. Már eddig is volt megoldás arra, hogy a számítógépek automatikusan frissítsék magukat (akár internet kapcsolat nélkül is), de most még egyszerűbb lett a rendszergazdák dolga.</p>
<p>A <a href="http://lab.symboltech.hu/2010/09/telepites-helyett-parancssori-hasznalat/">http://lab.symboltech.hu/2010/09/telepites-helyett-parancssori-hasznalat/</a> link alatt olvasható cikkben leírtuk, miként lehet telepítés nélkül futtatni hálózaos programunkat. Ezeket az információkat felhasználva egy további telepítési módot mutatunk be.</p>
<p>1. A cikkben szereplő módon csomagoljuk ki az EXE fájlt egy megosztott meghajtóra.</p>
<p>2. Készítsünk egy parancsikont, amely a /server opcióval a megfelelő helyre mutat. A megosztott meghajtóra helyezhetjük a parancsikont is.</p>
<p>2/a. Linux-os megosztás esetén (Samba) az EXE neve kezdődhet ponttal is, így láthatatlan lesz a felhasználók számára.</p>
<p>3. Minden felhasználó a megosztott mappában lévő LNK parancsikon fájlra kattintva elérheti a Symbol Ügyvitel programot.</p>
<p><strong>Előnyök:</strong></p>
<p>A. A rendszergazda központilag tudja cserélni a futtatható állományt (symbolugyvitelsetup.exe /x)</p>
<p>B. Mindenki ugyanarra az adatbázisra fog mutatni.</p>
<p>C. Senki nem fogja &#8220;véletlenül&#8221; frissíteni a rendszert.</p>
<p style="text-align: center;"><strong>További lehetőség, ha a felhasználó azonosítás a Windows bejelentkezéssel történik, akkor mindenki haszálhatja a központi parancsikont, de mégis jelszó beírása nélkül indul a Symbol Ügyvitel (korlátlan felhasználó definiálható!).</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/09/kozpontositott-telepites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Telepítés helyett parancssori használat</title>
		<link>http://lab.symboltech.hu/2010/09/telepites-helyett-parancssori-hasznalat/</link>
		<comments>http://lab.symboltech.hu/2010/09/telepites-helyett-parancssori-hasznalat/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 10:16:53 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[parancssor]]></category>
		<category><![CDATA[telepítés]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=657</guid>
		<description><![CDATA[Új telepítési módokat vezettünk be ügyfeleink kényelme érdekében. Igazából nem is hagyományos telepítési módok, sokkal inkább használati esetek.]]></description>
			<content:encoded><![CDATA[<p>Új telepítési módokat vezettünk be ügyfeleink kényelme érdekében. Igazából nem is hagyományos telepítési módok, sokkal inkább használati esetek.</p>
<p>Cégek rendszergazdái, főleg azok, akik több céget kezelnek vagy több cégben vezető beosztást betöltő személyek kedvence lehet az a telepítési mód, amikor magát a telepítőkészletet nem is telepítjük, csak az EXE-t másoljuk egy megfelelő helyre és parancsikont hozunk létre hozzá kézzel. Ennek előnye, hogy különböző parancsikonok különböző adatbázis szerverekre tudnak mutatni.</p>
<p><strong>1. lépés, a futtatható állomány kicsomagolása.</strong></p>
<p>Telepítőink új változatai (1.58-tól) parancssori paraméterrel is meghívhatóak. A <strong>/x</strong> és <strong>/xv</strong> kapcsolók a telepítés/frissítés helyett az EXE kicsomagolását ajánlják fel (/xv esetén a verziószámmal együtt). Így a felhasználó tetszőleges helyre mentheti az alkalmazást, anélkül, hogy telepítenie kelljen.</p>
<p>A SymbolUgyvitel.EXE önállóan képes hálózatos működésre, nem kell telepíteni, nem szükséges hozzá semmilyen DLL (Firebirdclient.dll sem), alapértelmezetten telepített Windows XP/Vista/7 alkalmas a program futtatására.</p>
<p><strong>2. lépés, a parancsikon létrehozása.</strong></p>
<p>Hozzunk létre egy vagy több parancsikont, amelyeknél a /server=&lt;szervernév&gt;:&lt;mappa&gt; formátumban meg tudjuk adni, hogy hova csatlakozzon. Opcionálisan a /firstonly kapcsoló használatával az első adatbázist használja, nem is keres többet.</p>
<p style="text-align: center;">Például LINUX szerverhez csatlakozva: <strong>symbolugyvitel.exe /server=center.cegnev.hu:/opt/db/symbolugyvitel /firstonly</strong></p>
<p>Mivel ilyen esetben a program nem kerül telepítésre, a telepítő alkalmazás futtatása új telepítésként értelmezi a működését. Érdemes az automatikus frissítést kikapcsolni és az hírlevélből értesülhet a felhasználó arról, hogy új verzió jelent meg.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/09/telepites-helyett-parancssori-hasznalat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Symboogle &#8211; a keresési mindenes</title>
		<link>http://lab.symboltech.hu/2010/07/symboogle-a-keresesi-mindenes/</link>
		<comments>http://lab.symboltech.hu/2010/07/symboogle-a-keresesi-mindenes/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 13:18:10 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=652</guid>
		<description><![CDATA[Lassan végső fázisba érkezik az univerzális ügyviteli keresőnk tervezése és fejlesztése.]]></description>
			<content:encoded><![CDATA[<p>Lassan végső fázisba érkezik az univerzális ügyviteli keresőnk tervezése és fejlesztése.</p>
<p>A Google megváltoztatta a világot a mindenre kiterjedő, szavak &#8211; a gyakorlatban szinte gondolatok &#8211; alapján történő kereséssel. Azt is kitalálja, mire is akartunk keresni. Ha nincs sok találat, ajánlást tesz arra is, hogy mire kellene keresnünk. Egyszóval okos.</p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2010/07/Symboogle.png"><img class="size-full wp-image-653 alignnone" title="Symboogle" src="http://lab.symboltech.hu/wp-content/uploads/2010/07/Symboogle.png" alt="" width="450" height="80" /></a></p>
<p>A Google az Interneten keresgél, a Symboogle-val ugyanezt tervezzük megvalósítani ügyviteli adataink között. Mindenre, mindenhol. <strong>Symboogle.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/07/symboogle-a-keresesi-mindenes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Parancssori kapcsolók &#8211; Csak rendszergazdáknak (18+)</title>
		<link>http://lab.symboltech.hu/2010/07/parancssori-kapcsolok-csak-rendszergazdaknak-18/</link>
		<comments>http://lab.symboltech.hu/2010/07/parancssori-kapcsolok-csak-rendszergazdaknak-18/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 11:05:47 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=648</guid>
		<description><![CDATA[Manapság a parancssori kapcsolók az átlag felhasználók számára már nem fontosan. A modern felhasználói felületű operációs rendszerkben nem kell a programokat a nevük begépelésével indítani és működést befolyásoló opciókat megadni. Azonban némely esetben a kapcsolókkal érdemes a működést befolyásolni.]]></description>
			<content:encoded><![CDATA[<p>Manapság a parancssori kapcsolók az átlag felhasználók számára már nem fontosan. A modern felhasználói felületű operációs rendszerkben nem kell a programokat a nevük begépelésével indítani és működést befolyásoló opciókat megadni. Azonban némely esetben a kapcsolókkal érdemes a működést befolyásolni.</p>
<p style="text-align: center;"><strong>Csak rendszergazdáknak!</strong></p>
<p>A Symbol Ügyvitel az alábbi parancssori paraméterekkel rendelkezik:</p>
<p><strong><span style="text-decoration: underline;">/syxmode</span></strong> SyX fejlesztői üzemmód</p>
<p><strong><span style="text-decoration: underline;">/server=&lt;hostname&gt;:&lt;databasefolder&gt;</span></strong> Kiszolgáló felülbírálása hálózatos üzemmódban</p>
<p><strong><span style="text-decoration: underline;">/skipotherconnections</span></strong> Adatbázis frissítés kikényszerítése aktív kapcsolat esetén is</p>
<p><strong><span style="text-decoration: underline;">/firstonly</span></strong> Több céges adatbázis esetén kapcsolódás mindig az első adatbázishoz</p>
<p><strong><span style="text-decoration: underline;">/?</span></strong> Súgó megjelenítése</p>
<p>A parancssori paraméterek beállításai frissítéskor és újratelepítéskor elvesznek, mert az asztali parancsikon is frissítésre kerül! Célszerű a parancsikon egy másolatát ellátni a parancssori paraméterekkel.</p>
<p><span style="color: #a31515; font-size: x-small;"><span style="color: #a31515; font-size: x-small;"></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/07/parancssori-kapcsolok-csak-rendszergazdaknak-18/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A 64bit mára már természetes</title>
		<link>http://lab.symboltech.hu/2010/07/a-64bit-mara-mar-termeszetes/</link>
		<comments>http://lab.symboltech.hu/2010/07/a-64bit-mara-mar-termeszetes/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 06:40:59 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[64bit]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=644</guid>
		<description><![CDATA[Brandom LeBlanc összefoglaló értekezése világosan megmutatja, hogy terjednek a 64bites Windows operációs rendszerek. Ennek oka lehet a tudatosság, de ismerve a honi és külhoni társadalom hozzáállását, inkább az OEM-nek köszönhető a terjedés.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://windowsteamblog.com/windows/b/bloggingwindows/archive/2010/07/08/64-bit-momentum-surges-with-windows-7.aspx" target="_blank">Brandom LeBlanc összefoglaló értekezése</a> világosan szemlélteti, hogyan terjednek a 64bites Windows operációs rendszerek. Ennek oka lehet a tudatosság. De ismerve a honi és külhoni társadalom hozzáállását, inkább az OEM-nek köszönhető a terjedés.</p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2010/07/2287_image_1DCE517A.png"><img class="aligncenter size-full wp-image-645" title="64bitX" src="http://lab.symboltech.hu/wp-content/uploads/2010/07/2287_image_1DCE517A.png" alt="" width="582" height="288" /></a></p>
<p>Ezek szerint az új számítógépet vásárlók már nem biztos, hogy tisztában vannak vele, mit is vásárolnak. A népszerű programok futnak a számítógépükön, de mi lesz az ügyvitellel?</p>
<p>A Symbol Ügyvitel minden változata alkalmas 64bites operiációs rendszeren való futattásra:</p>
<ul>
<li>Windows XP 64</li>
<li>Windows Vista 64</li>
<li>Windows 7 64</li>
<li>Windows 2008 x64</li>
</ul>
<p>És természetesen Linux kiszolgálót választva minden 64bites Linux disztribúciót támogatunk, ami fut a Firebird adatbázis-kiszolgáló.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/07/a-64bit-mara-mar-termeszetes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A LAB folyamatosan hegyezi a terméket</title>
		<link>http://lab.symboltech.hu/2010/07/a-lab-folyamatosan-hegyezi-a-termeket/</link>
		<comments>http://lab.symboltech.hu/2010/07/a-lab-folyamatosan-hegyezi-a-termeket/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 21:22:45 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[adatmennyiség]]></category>
		<category><![CDATA[adatok]]></category>
		<category><![CDATA[performancia]]></category>
		<category><![CDATA[sebesség]]></category>
		<category><![CDATA[teljesítmény]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=636</guid>
		<description><![CDATA[LAB csapatunk 12 emberhónapig készítette a keretrendszert, de időről-időre újra előveszik azt. Az összegyűjtött tapasztalatok alapján minden alkalommal találnak a rendszerben valamilyen gyorsítási lehetőséget.]]></description>
			<content:encoded><![CDATA[<p>LAB csapatunk 12 emberhónapig készítette a keretrendszert, de időről-időre újra előveszik azt. Az összegyűjtött tapasztalatok alapján minden alkalommal találnak a rendszerben valamilyen gyorsítási lehetőséget.</p>
<p style="text-align: center;"><a href="http://lab.symboltech.hu/wp-content/uploads/2010/07/FastTram.jpg"><img class="size-medium wp-image-638  aligncenter" title="sebesség" src="http://lab.symboltech.hu/wp-content/uploads/2010/07/FastTram-300x207.jpg" alt="" width="300" height="207" /></a></p>
<p><strong>A. Rendszerünk jelenleg több, mint 130 adatbázis táblában tárolja az adatokat</strong> (1347 mezőt számoltunk össze, persze nem kézzel kockás papíron). Adatbázis műveleteink központosítottak, bármilyen adatkezelési/adatelérési változás a módosítás után a programunk minden pontján megjelenik.</p>
<p>Számos alkalommal finomítottunk:</p>
<ul>
<li>a nagy mennyiségű adatok lekérésének módján</li>
<li>a megszakítható lekérdezéseken (pl: véletlenül rosszul beállított szűrőfeltétel)</li>
<li>Large Object (BLOB = maximum 2GB-os adat, például video vagy tárol PDF) mezők lekérdezésein</li>
</ul>
<p><strong>B. Javítottuk a felesleges adathozzáféréseket.</strong> Többször előfordult, hogy egy-egy rendelkezésre álló adatot újból elértünk, újból áthoztuk a hálózaton. Ezen hibák kiküszöbölésére a LAB a fejlesztők rendelkezésére bocsátott egy SQL napló felületet, ahol a fejlesztő kolléga már munka közben látja, hogy az általa megvalósított funkció (pl: számla stornózás) hány alkalommal fordul a kiszolgálóhoz és milyen válaszidőkkel kell számolnia. Így a tesztelésre kerülő alkalmazás nem vagy csak ritkán küzd sebesség problémákkal. A tesztelőknek pedig nem ezzel kell foglalkozniuk.</p>
<p><strong>C. Az SQL napló mintájára</strong> a fejlesztők figyelemmel kísérhetik, hogy a program adott állapotban milyen memóriafoglalási mérőszámokkal fut. Konkrétan hozzáférnek a betöltött (és betöltve maradt) például 43 vevőhöz, amelyek mindegyikéről minden adat lekérdehező és látható az is, hogy mikor és hol került betöltésre. És főleg miért maradt bent, mi használja?</p>
<p><strong>D. Az architektúrából adódóan eddig is volt egy ún. &#8220;felpörgési ideje&#8221; a rendszernek.</strong> Az ablakok első megnyitása &#8211; &#8220;hála&#8221; a Microsoft-nak &#8211; az inicializálás (runtime compiler) miatt kicsivel lassabb volt. Mostantól azonban a ritkán változó adatok állandóan memóriában tartása miatt a felpörgési időt sikerült csökkenteni. A törzsadatok és egyéb statikus információk a változási valószínűségük alapján egyre ritkábban töltődnek újra. Kb. 30 percnyi programhasználat után már csak a ténylegesen változó adatok elérésekor van szükség hálózati forgalomra.</p>
<p style="text-align: center;"><strong>Konklúzió.</strong></p>
<p>A sikeres, gyakran két embernek is több napos, hetes munkát jelentő mögöttes fejlesztések során eljutottunk odáig, hogy az alkalmazott technológia képes kiszolgálni a következő felépítésű céget. Gyakorlatból állítjuk, hogy:</p>
<ul>
<li>50 helyi felhasználó, call-center (gyakori, rövid műveletekkel)</li>
<li>5-15 távoli felhasználó 2Mbit up/down bérelt vonalon</li>
<li>5 <span style="text-decoration: underline;">nagyon</span> távoli (külföldi) felhasználó a fent említett bérelt vonalon</li>
<li>átlagos, szerver célokra tervezett, de nem több milliós számítógép, 64bites Fedora Linux operációs rendszert futtatva.</li>
</ul>
<p><strong><em>Büszkék vagyunk a teljes egészében általunk tervezett és épített keretrendszerre, amely az elmúlt egy évben sok-sok felhasználónál, különböző platformokon is jól teljesített. Hajrá LAB!</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/07/a-lab-folyamatosan-hegyezi-a-termeket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft .NET vs. Java &#8211; Családi viszály</title>
		<link>http://lab.symboltech.hu/2010/07/microsoft-net-vs-java-csaladi-viszaly-okozoja/</link>
		<comments>http://lab.symboltech.hu/2010/07/microsoft-net-vs-java-csaladi-viszaly-okozoja/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 22:07:37 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=631</guid>
		<description><![CDATA[Fejlesztői körökben sem mindenkinek. Csak és kizárólag erős idegzetűeknek!]]></description>
			<content:encoded><![CDATA[<p>Fejlesztői körökben sem mindenkinek. Csak és kizárólag <strong>erős idegzetűeknek</strong>!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/fzza-ZbEY70&amp;hl=hu_HU&amp;fs=1&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/fzza-ZbEY70&amp;hl=hu_HU&amp;fs=1&amp;rel=0" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/07/microsoft-net-vs-java-csaladi-viszaly-okozoja/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SyX=Symbol eXtension. Már csak pár nap&#8230;</title>
		<link>http://lab.symboltech.hu/2010/02/syxsymbol-extension-mar-csak-par-nap/</link>
		<comments>http://lab.symboltech.hu/2010/02/syxsymbol-extension-mar-csak-par-nap/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 14:45:50 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[syx]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=618</guid>
		<description><![CDATA[A jövő hét folyamán jelenik meg programunk új verziója. Ezzel nem is mondunk újdonságot. Partnereink megszokhatták, hogy minden két hétben előrukkolunk valamivel. Ha kérik, ha nem. Mert van még a tarsolyunkban. Amivel a jövő héten megjelenünk, azt nem kérték. Mert ezidáig még senki nem csinált ilyet. Talán nem is gondolták volna az ügyfelek, hogy lehet [...]]]></description>
			<content:encoded><![CDATA[<p>A jövő hét folyamán jelenik meg programunk új verziója. Ezzel nem is mondunk újdonságot. Partnereink megszokhatták, hogy minden két hétben előrukkolunk valamivel. Ha kérik, ha nem. Mert van még a tarsolyunkban.</p>
<p>Amivel a jövő héten megjelenünk, azt nem kérték. Mert ezidáig még senki nem csinált ilyet. Talán nem is gondolták volna az ügyfelek, hogy lehet ilyet is. Mottó: &#8220;<strong>Egyedi fejlesztés, ingyen.</strong>&#8221;</p>
<p><strong>Mi a helyzet az egyedi igényekkel?</strong></p>
<p>Általában a felhasználók kérik, cégük működéséhez akarván igazítani a dobozos ügyvitel megoldást. Ez így helyén is van, ők a megrendelők.</p>
<p><strong>Mi a baj az egyedi igényekkel?</strong></p>
<p>Ez már fogósabb kérdés. A problémát az okozhatja, <strong>ha szót fogadunk</strong> és a fejlesztőcsapat beleépíti a kívánt funkciót a programba. Az ügyfél boldog, majd megkapja a számlát. Akkor már csak félig örül. (Valljuk be, minden egyedi fejlesztés pénzbe kerül. A nyomott árú piacon sajnos a termék árának többszöröse is lehet egy-egy új lista vagy export fájl.) De a funkciót megkapta, cége működése rendben van. A fejlesztőcsapat viszont évek múltán is kell, hogy emlékezzen valamilyen egyedi igényre, amely a programban valahol drótozottan jelen van. Nem kell messze mennünk (és sok karaktert sem beütni a böngésző címsorába), hogy példát hozzunk erre.</p>
<p>Képzeletbeli nagy cég, sok egyedi fejlesztés. Évek múltán is ott virít a &#8220;<strong>IF dubaj_mukodes</strong>&#8221; feltétel a programban, mert valamikor az őskorban eladtak egy programpéldányt a <a href="http://hu.wikipedia.org/wiki/Dubaj" target="_blank">sejkeknek</a>. A tizedik egyedi fejlesztésnél már egy külön ember kell arra, hogy fejben tartsa, mit kinek és miért építettünk bele. Szomorú tesztelők.</p>
<p><strong>Mi még a baj a felhasználói kérésekkel?</strong></p>
<p><strong>Az, ha nem tudjuk megvalósítani</strong>. Technológiailag képzettek lehetnének a szakemberek, de Zsiguli típusú személygépjárművel már csak a Bamakó rally-n indulhatunk. Ne legyenek Forma-1-es terveink és ígéreteink.</p>
<p><strong>Amit mi ígérünk&#8230;</strong></p>
<p>Mi nem ígérünk semmit, lehetőséget biztosítunk. Hogy mire? Ez ki fog derülni a jövő héten&#8230;</p>
<p style="text-align: right;"><strong><em>Türelmüket megköszönve, a Symbol Tech Kft. csapata.</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/02/syxsymbol-extension-mar-csak-par-nap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A fejlesztő gépek teljesítménye &#8211; néha ez is véges</title>
		<link>http://lab.symboltech.hu/2010/01/a-fejleszto-gepek-teljesitmenye-neha-ez-is-veges/</link>
		<comments>http://lab.symboltech.hu/2010/01/a-fejleszto-gepek-teljesitmenye-neha-ez-is-veges/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 18:38:25 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[17coll]]></category>
		<category><![CDATA[2GB]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=616</guid>
		<description><![CDATA[A szoftverfejlesztő cégek kell, hogy erősebb számítógépekkel fejlesszenek, mint a felhasználói számítógépek, de nem csak a GHz-ek számítanak. Egy kis betekintés, hogy min dolgoznak kollégáink.]]></description>
			<content:encoded><![CDATA[<p>A szoftverfejlesztő cégek kell, hogy erősebb számítógépekkel fejlesszenek, mint a felhasználói számítógépek, de nem csak a GHz-ek számítanak. Egy kis betekintés, hogy min dolgoznak kollégáink.</p>
<p><strong>Dell notebook-ok</strong>: A fejlesztők számítógépei mind notebook-ok, ebből is természetesen minőségi gépet kell választanunk, a leállás sokkal nagyobb hátrány, mint pár tízezer Ft. Ezért is választottuk a DELL számítógépeket. 2.4GHz, Core2Duo. Windows Vista.</p>
<p><strong>17&#8221;-es display, 1440&#215;900-as felbontás</strong>: sokmindennek ki kell férnie az asztalra. De nem lehet sokkal nagyobb, mint a felhasználók (kijelzőjének) felbontása, mert a kollégák hirtelen túl nagy ablakokat hoznának létre.</p>
<p><strong>2-3GB memória</strong>: A hordozható számítógépek hátránya, hogy hordozzák őket. Emiatt nem mindenki az irodában tölti a munkaidejét. Ezért a teljes infrastruktúra kis méretű változata rendelkezésre kell, hogy álljon a számítógépeken. Adatbázis szerver, fejlesztőeszköz, Symbol Ügyvitel alkalmazás. Ez mind egy gépen is kell, hogy fusson. Ezért kell minimum 2GB.</p>
<p><strong>Központi fejlesztői szerver</strong>: Master adatbázisunk, amely a fejlesztés magja ezen a számítógépen helyezkedik el. Ehhez csatlakoznak a kollégák, a forráskódok is ezen kerülnek tárolásra.</p>
<p><strong>Adatmentés</strong>: Folyamatos adatmentés, amelynek részei: adatbázisok, forráskódok, grafikai fejlesztések (portál, wordpress, stb.) munkafájljai.</p>
<p><strong>Céges adatok</strong>: Természetesen mi is a Symbol Ügyvitelt használjuk. Ehhez egy külön szervert állítottunk be, amely LINUX és fájlszerverként is szolgál. Ez egy jó tesztkörnyezet is.</p>
<p><strong>VMware</strong>: Tesztelést végző kollégáink külön erre a célra lecsupaszított virtuális számítógépeken tesztelik programjainkat. Két fontos szempont van, amit mindig ellenőrízni kell:</p>
<ol>
<li><span style="text-decoration: underline;">Üres operációs rendszer</span>. Frissen telepített operációs rendszereken is futnia kell a programnak, nem elég ha fel tudunk mutatni egy számítógépet, amin elindul. Hiszen az ügyfélnek általában nem fejlesztői számítógépe van.</li>
<li><span style="text-decoration: underline;">Változatos operációs rendszerek</span>.WindowsXP, Windows Vista, Windows7. Ez utóbbi kettőből x86 és x64-es változat, magyar, angol és német nyelvi beállítás. Ez is egy komoly és fontos feladat.</li>
</ol>
<p><em>Néha még így is elfogy a memória&#8230; A Microsoft-os fejlesztőkörnyezetünk átlag heti egy alkalommal memória &#8220;elfogyásra&#8221; panaszkodik. Ilyenkor újra kell indítani. No, ez belefér. Jó munkát!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2010/01/a-fejleszto-gepek-teljesitmenye-neha-ez-is-veges/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Surface megvásárolható</title>
		<link>http://lab.symboltech.hu/2009/12/microsoft-surface-megvasarolhato/</link>
		<comments>http://lab.symboltech.hu/2009/12/microsoft-surface-megvasarolhato/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 08:58:08 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[surface]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=609</guid>
		<description><![CDATA[A mai naptól megvásárolható a Microsoft Surface érintőképernyős asztal. Egyelőre itthon még nem, de Ausztriában igen. Az árakról is érdemes szólni.]]></description>
			<content:encoded><![CDATA[<p>A mai naptól megvásárolható a Microsoft Surface érintőképernyős asztal. Egyelőre itthon még nem, de Ausztriában igen. Az árakról is érdemes szólni.</p>
<p>Külön kerül értékesítésre a fehér színű fejlesztői változat és a fekete végfelhasználói.</p>
<p>Fejlesztői változat tartalmazza:</p>
<ul>
<li>Surface Software license consisting of Surface Platform runtime 1.0 SP1 software</li>
<li>Windows Vista Business SP1</li>
<li>Surface SDK 1.0 SP1</li>
</ul>
<p>A végfelhasználói változatnak nem része az SDK. Talán ezét kerül többe (!!!) a fejlesztői változat. Pedig a logikus az lenne, ha a promóció miatt a fejlesztés olcsóbb lenne. Úgyis meg kell venni a végfelhasználóit, ha telepíteni is akarom a célközönségnél.</p>
<p><a href="http://lab.symboltech.hu/wp-content/uploads/2009/12/surfcomm.png"><img class="aligncenter size-medium wp-image-611" title="surfcomm" src="http://lab.symboltech.hu/wp-content/uploads/2009/12/surfcomm-300x222.png" alt="" width="300" height="222" /></a><a href="http://lab.symboltech.hu/wp-content/uploads/2009/12/surfdev.png"><img class="aligncenter size-medium wp-image-612" title="surfdev" src="http://lab.symboltech.hu/wp-content/uploads/2009/12/surfdev-300x222.png" alt="" width="300" height="222" /></a></p>
<p>Az ára <strong>13.000€</strong>, azaz kicsit több, mint <strong>3.5M</strong> Ft. Nem kevés, de minden bizonnyal az elterjedés után nyomottabb áron is elérhető lesz.</p>
<p>Természetesen cserealkatrészek is elérhetőek hozzá.</p>
<p>Elérhető itt: <a href="http://www.microsoft.com/surface/Pages/HowToBuy/HowToBuy.aspx">http://www.microsoft.com/surface/Pages/HowToBuy/HowToBuy.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/microsoft-surface-megvasarolhato/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Számlázóprogramok problémája WIFI hálózaton</title>
		<link>http://lab.symboltech.hu/2009/12/szamlazoprogramok-problemaja-wifi-halozaton/</link>
		<comments>http://lab.symboltech.hu/2009/12/szamlazoprogramok-problemaja-wifi-halozaton/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 10:02:12 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[clipper]]></category>
		<category><![CDATA[delphi]]></category>
		<category><![CDATA[hálózat]]></category>
		<category><![CDATA[wifi]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=606</guid>
		<description><![CDATA[Mindannyian találkoztunk azokkal az esetekkel, amikor egy WIFI hálózat kicsit leterheltebb és még a 10%-át sem hozza annak, ami rá van írva a routerre. Nagy cégeknél a hálózat komolyabb ugyan, de a többi cég az irodaházban ugyanúgy bezavarhat. És be is zavar.]]></description>
			<content:encoded><![CDATA[<p>Mindannyian találkoztunk azokkal az esetekkel, amikor egy WIFI hálózat kicsit leterheltebb és még a 10%-át sem hozza annak, ami rá van írva a routerre. Nagy cégeknél a hálózat komolyabb ugyan, de a többi cég az irodaházban ugyanúgy bezavarhat. És be is zavar.</p>
<p>Azok az ügyviteli rendszerek, amelyek a megszokott, összekattintgatós módszerrel készültek (&#8220;Programozzunk könnyen gyorsan Clipperben/Delphiben&#8221;), egy számítógépen tökéletesen futnak. A hálózatos működés is megvalósult, bár itt, amig valaki számlát állít ki, addig a többiek néha várakoznak. 2-3 éves fejlesztés után (miközben az ügyfelek jelezék, hogy mi hol nem megy hálózatban) minden flottul ment. A Windows7 hálózati kezelése kicsit felboríthatja a terveket, de ha XP-t használnak, akkor működik a dolog. <strong>Amig van kábel a szerver és a gép között.</strong> WIFI-n a programok nem működnek, mert annyira gyakran és olyan sok adat utazik (utazna) a hálózaton.</p>
<p><strong>Cégünk egy emberévig</strong> (fejlesztés mértékegysége), gyakorlatban 3 ember, 4 hónapig fejlesztette azt az adatbáziskezelési technológiát, amely WIFI hálózaton is alkalmas a program működtetésére. Az unalmas részleteket nélkülözve annyit érdemes tudni, hogy a bizonylatok kiállításakor szinte minden információ rendelkezésre áll, hogy a munkát elvégezhessük, nincs szükség állandó kapcsolatra.</p>
<p>Emiatt Symbol Ügyvitel termékünk dobozos változatának csomagolásán is ott virít a felirat:</p>
<p style="text-align: center;">&#8220;<strong>Vezeték nélküli hálózaton is használható</strong>&#8220;.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/szamlazoprogramok-problemaja-wifi-halozaton/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Karácsony, 64 bites számítógép &#8211; De a számlázóm nem fut rajta</title>
		<link>http://lab.symboltech.hu/2009/12/karacsony-64-bites-szamitogep-de-a-szamlazom-nem-fut-rajta/</link>
		<comments>http://lab.symboltech.hu/2009/12/karacsony-64-bites-szamitogep-de-a-szamlazom-nem-fut-rajta/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 09:46:36 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[64bit]]></category>
		<category><![CDATA[symbol]]></category>
		<category><![CDATA[számlázó]]></category>
		<category><![CDATA[ügyvitel]]></category>
		<category><![CDATA[x64]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=604</guid>
		<description><![CDATA[Itt a Karácsony. És még válság is van. Ilyenkor az emberek nem költenek egymásra, sajnos. Mindenki bezippzározza a pénztárcát. Aki költ, az magának vesz. Mondjuk egy notebook-ot. 64biteset, Windows 7-tel. És otthon kiderül, hogy nem fut már a Delphi-s számlázóprogramja, pláne nem MsSQL szerverrel.

Mi ilyenkor a teendő?]]></description>
			<content:encoded><![CDATA[<p>Itt a Karácsony. És még válság is van. Ilyenkor az emberek nem költenek egymásra, sajnos. Mindenki bezippzározza a pénztárcát. Aki költ, az magának vesz. Mondjuk egy notebook-ot. 64biteset, Windows 7-tel. És otthon kiderül, hogy nem fut már a Delphi-s számlázóprogramja, pláne nem MsSQL szerverrel.</p>
<p style="text-align: center;"><strong>Mi ilyenkor a teendő?</strong></p>
<p>Vannak félmegoldások arra vonatkozólag, hogy hogy lehet életet lehelni a betegbe. Telepítsd ide, majd másold át oda, majd indítsd újra és kattints oda. Utána nézd meg, hogy elindult-e. Ha nem, akkor az ünnepek után hívd az ügyfélszolgálatot&#8230; van ennél jobb megoldás is: Symbol Ügyvitel!</p>
<p>Már a tervezésnél nagy hangsúlyt fektettünk arra, hogy rendszrrünk 64bites operációs rendszeren is fusson és Önnek ne kelljen bonyolult telepítési módokat végigkattintgatnia. A telepítőkészlet méretét nem szerettük volna növelni a 64bites csomagokkal. Ezt a telepítő alternatív tükörszerverekről tölti le, amennyiben szükség van rá.</p>
<ul>
<li>64bites <strong>.NET framework</strong> letöltésre kerül, ha szükség van rá. Ez a Windows7-nek része, de a 64bites XP-nek még nem.</li>
<li>A 64bites <strong>adatbáziskezelő</strong> is jobban kihasználja a gépekbe rakott 4GB (vagy több) RAM-ot, sőt csak ez használja ki. 32bites operációs rendszer nem fogja ezt kezelni. Nálunk erre is van lehetőség, sőt automatikusan ez települ, ha szükség van rá.</li>
<li>A<strong> Symbol Ügyvitel</strong> alkalmazás pedig elkészültekor is már 32/64 bites operácisó rendszeren is futtatható formában valósult meg.</li>
</ul>
<p>És mivel jövőre jönnek a 128 bites szerverek, elkezdtük ennek a technológiának a feltérképezését is.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/karacsony-64-bites-szamitogep-de-a-szamlazom-nem-fut-rajta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Csekknyomtatás, de csak az első példányon</title>
		<link>http://lab.symboltech.hu/2009/12/csekknyomtatas-de-csak-az-elso-peldanyon/</link>
		<comments>http://lab.symboltech.hu/2009/12/csekknyomtatas-de-csak-az-elso-peldanyon/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 11:59:33 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[csekk]]></category>
		<category><![CDATA[nyomtatás]]></category>
		<category><![CDATA[példány]]></category>
		<category><![CDATA[számla]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=600</guid>
		<description><![CDATA[Ügyviteli rendszerek pár éve tudnak csekkes számlaformátumot nyomtatni, mert a vevő könnyen szeretné befizetni pár ezer Forint-os tételeit. Ehhez nem a banki átutalást választja. De probléma volt, hogy a három példányos számlánál hogy tárazzuk be a nyomtatóba a papírokat. Ennek a megoldása született meg.]]></description>
			<content:encoded><![CDATA[<p>Ügyviteli rendszerek pár éve tudnak csekkes számlaformátumot nyomtatni, mert a vevő könnyen szeretné befizetni pár ezer Forint-os tételeit. Ehhez nem a banki átutalást választja. De probléma volt, hogy a három példányos számlánál hogy tárazzuk be a nyomtatóba a papírokat. <strong>Ennek a megoldása született meg.</strong></p>
<p>A Symbol Ügyvitel új verziójában egyszerre jelent meg a csekkes számlaformátum és a példányok külön nyomtatása, természetesen tömegesen is.</p>
<p><strong>A csekkes számlaformátum</strong> külön bizonylattömbbe szervezhető, amely praktikus is, hiszen egyik vevőm csekkes, másik nagy összegű, átutalásos. Minden bizonylatnál a tömeges nyomtatási lehetőségnél választhatunk az első példány, a nem első példány és a minden példány között.</p>
<p><em>Természetesen nem csak számla, hanem az ÁFA spóroló díjbekérő is nyomtatható csekkes formátumban.</em></p>
<p><strong>Tipikus felhasználási mód</strong> a tömeges számlakiállítás nyomtatás nélkül, napi 7.5 órában. Majd a munkaidő előtti fél óra felhasználható a nap folyamán kiállított számlák első példányának csekkes nyomtatására, majd a 2./3. példányok normál papírra való nyomtatására.</p>
<p><strong>És a fél óra alatt csak kettőt kell kattintanunk, azaz még két bögre tea is belefér&#8230;</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/csekknyomtatas-de-csak-az-elso-peldanyon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vonalkódolvasás bevezető karakterrel</title>
		<link>http://lab.symboltech.hu/2009/12/vonalkodolvasas-bevezeto-karakterrel/</link>
		<comments>http://lab.symboltech.hu/2009/12/vonalkodolvasas-bevezeto-karakterrel/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 11:53:07 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[csippantás]]></category>
		<category><![CDATA[F9]]></category>
		<category><![CDATA[vonalkód]]></category>
		<category><![CDATA[vonalkódolvasó]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=597</guid>
		<description><![CDATA[Régi beidegződés, hogy a vonalkódolvasó egy virtuális billentyűzet, amely az olvasás végén küld egy ENTER-t. Tíz éve ez volt, mára változnak az idők...]]></description>
			<content:encoded><![CDATA[<p>Régi beidegződés, hogy a vonalkódolvasó egy virtuális billentyűzet, amely az olvasás végén küld egy ENTER-t. <strong>Tíz éve ez volt, mára változnak az idők&#8230;</strong></p>
<p>Régóta működik a bevezető karakter is. A vonalkódolvasó az olvasás megkezdésekor is tud küldeni egy karaktert. Rendszerünk &#8211; amennyiben ez az általában is elfogadott F9 billenytű &#8211; támogatja a bevezető karaktereket is. Bizonylatok tételei automatikus kitöltésre kerülnek az F9 hatására, a főablakon pedig gyors termékinformációk jeleníthetők meg egyetlen csippantással.</p>
<p>Információ: <a href="http://www.symboltech.hu/features/vonalkod/">http://www.symboltech.hu/features/vonalkod/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/vonalkodolvasas-bevezeto-karakterrel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A beépített szövegszerkesztő &#8211; Ügyviteli Újdonság</title>
		<link>http://lab.symboltech.hu/2009/12/a-beepitett-szovegszerkeszto-ugyviteli-ujdonsag/</link>
		<comments>http://lab.symboltech.hu/2009/12/a-beepitett-szovegszerkeszto-ugyviteli-ujdonsag/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 11:48:38 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[rtf]]></category>
		<category><![CDATA[szövegszerkesztő]]></category>
		<category><![CDATA[word]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=593</guid>
		<description><![CDATA[Mi az, amit már nem lehet egy régi technológiával megvalósított ügyviteli rendszerrel megoldani? A kérdésre nagyon sok válasz adható. Mi életjárunk az új megoldások megálmodásában és megvalósításában.
Mert amiről nem tudunk, arra nem is vágyhatunk!]]></description>
			<content:encoded><![CDATA[<p>Mi az, amit már nem lehet egy régi technológiával megvalósított ügyviteli rendszerrel megoldani? A kérdésre nagyon sok válasz adható. Mi élenjárunk az új megoldások megálmodásában és megvalósításában.</p>
<p><strong>Mert amiről nem tudunk, arra nem is vágyhatunk!</strong></p>
<p>Évek óta problémát jelent, hogy ügyfélkapcsolati oldalon kultúrált, formázható szöveges dokumentumokat állítsunk elő és ezeket ügyfeleinknek ki tudjuk küldeni. Az eddigi megoldások hátrányai:</p>
<ul>
<li>Word-ben megírt dokumentumban kézzel kell elhelyezni a vevőinformációkat.</li>
<li>Az ügyviteli rendszerbe integrált word-illesztés érzékeny arra, hogy milyen verziójú Office rendszer van a gépünkön. Az ingyenes OpenOffice-nak semmilyen verzióját sem támogatják a mai rendszerek.</li>
<li>Dokumentum előállító és iktató rendszerek nem illeszthetőek ügyviteli rendszerhez, illetve külön támogatást igényelnek, azaz nem dobozosak.</li>
</ul>
<p>A Symbol Tech csapata előállt egy beépített szövegszerkesztővel. Ennek felhasználásával Ön a fizetési felszólításokat és egyenlegközlőket sablon szerűen szerkesztheti, formázhatja és ügyfél/egyéb mezőket helyezhet el benne. Hasonlóan a Word körlevél funkciójához. De nem szükséges a word-öt a számítógépre telepíteni.</p>
<p>További információ: <a href="http://www.symboltech.hu/features/fizetesifelszolitas/">http://www.symboltech.hu/features/fizetesifelszolitas/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/a-beepitett-szovegszerkeszto-ugyviteli-ujdonsag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Vista adatbázis is szép csendben készülget</title>
		<link>http://lab.symboltech.hu/2009/12/a-vista-adatbazis-is-szep-csendben-keszulget/</link>
		<comments>http://lab.symboltech.hu/2009/12/a-vista-adatbazis-is-szep-csendben-keszulget/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 20:53:20 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[firebird]]></category>
		<category><![CDATA[mssql]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[vista]]></category>
		<category><![CDATA[vistadb]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=586</guid>
		<description><![CDATA[Az adatbázis megoldásokat szállító cégek  régen beleülhettek a kényelmes fotelükbe, nem nagyon volt újdonság. MySQL ha ingyenes kell, ha kis tranzakció kell, akkor InnoDB. Ha Delphi/MicroSoft-os vagy, akkor MsSQL/MSDE. Ha bankod van, akkor úgyis van Oracle. Ha nagyon Delphi-s vagy, akkor Interbase/Firebird. (Symbol Ügyvitel is FB 2.1 alapokon fut, ennek architektúrális okai vannak, a Delphi-s [...]]]></description>
			<content:encoded><![CDATA[<p>Az adatbázis megoldásokat szállító cégek  régen beleülhettek a kényelmes fotelükbe, nem nagyon volt újdonság. MySQL ha ingyenes kell, ha kis tranzakció kell, akkor InnoDB. Ha Delphi/MicroSoft-os vagy, akkor MsSQL/MSDE. Ha bankod van, akkor úgyis van Oracle. Ha nagyon Delphi-s vagy, akkor Interbase/Firebird.</p>
<p style="text-align: center;">(<em>Symbol Ügyvitel is FB 2.1 alapokon fut, ennek architektúrális okai vannak, a Delphi-s indíttatás elenyésző &#8211; a szerk.</em>)</p>
<h3 style="text-align: center;">És közben magát nagyon jól pozicionálva megjelent a VistaDB4. <a href="http://www.vistadb.net/vistadb">http://www.vistadb.net/vistadb</a></h3>
<p style="text-align: center;"><em>Talán régebben választották neki a nevet, mint ahogy a Microsoft operációs rendszere megszületett.</em></p>
<p><strong> </strong></p>
<p><strong>Mit is tud általában?</strong></p>
<p><span style="text-decoration: underline;">Beépített.</span> Ez azt jelenti, hogy nem kell szervert telepíteni, minden művelet, megoldás az applikációban kap helyet.</p>
<p><span style="text-decoration: underline;">T-SQL-t érti.</span> Az MsSQL tárolt eljárás nyelvét egy az egyben futattni képes, sőt a CLR-t is fel tudja használni.</p>
<p><span style="text-decoration: underline;">MSSQL funkciók.</span> Számos olyan funkció beépítésre került, amely a &#8220;nagy&#8221; MsSQL-nek része, de a CE (compact edition) változat nem tatalmazza: triggerek, tárolt eljárások. Így alternatívája lehet az MSDE/MsSQL-CE-nek.</p>
<p><strong> </strong></p>
<p><strong>Mi egyebet kapunk?</strong></p>
<ul>
<li>Visual Studio integráció</li>
<li>Adatmodellező eszköz</li>
<li>.NET framework teljes integráció</li>
</ul>
<p><strong> </strong><strong>Mibe kerül ez nekünk?</strong></p>
<ul>
<li>Természetesen ára van, mert semmi nincs ingyen.</li>
<li>$59 az alapértelmezett, Light csomag, ebben sajnos kevés a funkcionalitás.</li>
<li>$359 az ideális választás /fejlesztő.</li>
<li>A runtime komponensek felhasználókhoz való eljuttatása természetesen ingyenes.</li>
</ul>
<p>Jó választás, jó a verseny, egy kiforrott alternatíva lehetősége a korábbiak mellett, amelyek már kinövik saját méretüket. Lásd MsSQL 200MB-os telepítő!</p>
<div class="wp-caption aligncenter" style="width: 498px"><img class=" " title="VistaDB" src="http://www.vistadb.net/images/screenshotsXP/vistadb3/db3_06.jpg" alt="VistaDB" width="488" height="350" /><p class="wp-caption-text">VistaDB</p></div>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/12/a-vista-adatbazis-is-szep-csendben-keszulget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vásárlásra ösztönző és megtévesztő domain-ek</title>
		<link>http://lab.symboltech.hu/2009/11/vasarlasra-osztonzo-es-megteveszto-domain-ek/</link>
		<comments>http://lab.symboltech.hu/2009/11/vasarlasra-osztonzo-es-megteveszto-domain-ek/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 09:46:31 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[megtévesztés]]></category>
		<category><![CDATA[számlázó]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=577</guid>
		<description><![CDATA["Egy-egy domain birtoklása hatalom" gondoltuk pár évvel ezelőtt. Majd kiderült, hogy sokkal inkább fontos a jó marketing, a google keresőóriás felé elköltött Forintok. Ha BMW típusú autót szeretnék vásárolni, akkor nem a www.bmw.hu oldalt látogatom meg, hanem a keresőbe beírom, milyen autót szeretnék.

Mindenki, aki ilyen típusú autóval kereskedik, saját cégneve alatt létrehoz egy domain-t (www.bmw-cegnev-kft.hu), majd keresőbaráttá teszi. És tőle vásárolnak. Most egy még újabb trend-forduló van kialakulóban. Még cselesebb!]]></description>
			<content:encoded><![CDATA[<p>&#8220;<strong>Egy-egy domain birtoklása hatalom</strong>&#8221; gondoltuk pár évvel ezelőtt. Majd kiderült, hogy sokkal inkább fontos a jó marketing, a google keresőóriás felé elköltött Forintok. Ha BMW típusú autót szeretnék vásárolni, akkor nem a <a href="http://www.bmw.hu">www.bmw.hu</a> oldalt látogatom meg, hanem a keresőbe beírom, milyen autót szeretnék.</p>
<p>Mindenki, aki ilyen típusú autóval kereskedik, saját cégneve alatt létrehoz egy domain-t (<a href="http://www.bmw-akarmi.hu">www.bmw-cegnev-kft.hu</a>), majd keresőbaráttá teszi. És tőle vásárolnak. Most egy még újabb trend-forduló van kialakulóban. Még cselesebb!</p>
<p><img class="aligncenter size-medium wp-image-578" title="kocka" src="http://lab.symboltech.hu/wp-content/uploads/2009/11/domain-names-dice-300x299.jpg" alt="kocka" width="300" height="299" /></p>
<p>Sok cégnek nem sikerült említésre méltó brand-et kialakítani vagy pont presztízs veszteség(!!!) lenne a cégnevet feltüntetni. És kialakult a <a href="http://www.a-termekcsoport-neve.hu">www.a-termekcsoport-neve.hu</a> domain felépítés. Lássunk néhány példát erre:</p>
<p style="padding-left: 30px;">ARendszergazda Kft. által üzemeltetett, kifejezetten értékesítési célú weboldal:<br />
<a href="http://www.a-szamlazo-program.com">www.a-szamlazo-program.com</a></p>
<p style="padding-left: 30px;">Diamond Stúdió Kft cégkapcsolatait kihasználó:<br />
<a href="http://www.ugyvitel.com">www.ugyvitel.com</a></p>
<p style="padding-left: 30px;">QualitySoft Kft célirányos domainje:<br />
<a href="http://www.szamvitelirendszer.hu">www.szamvitelirendszer.hu</a></p>
<p>Természetesen nem emelhetünk kifogást minden ellen, ami tartalmaz valamilyen célravezető fogalmat. A <a href="http://www.ugyvitelbazis.hu">www.ugyvitelbazis.hu</a> neve hűen tükrözi azt, amivel foglalkoznak. A leginkább polgárpukkasztóak az olyan domainek, amelyek <strong>a/az</strong> névelővel kezdődnek:</p>
<p style="padding-left: 30px;"><a href="http://www.akereskedo.hu">www.akereskedo.hu</a></p>
<p style="padding-left: 30px;"><a href="http://www.abroker.hu">www.abroker.hu</a></p>
<p style="padding-left: 30px;"><a href="http://www.abolt.hu">www.abolt.hu</a></p>
<p style="padding-left: 30px;"><a href="http://www.akereso.hu">www.akereso.hu</a></p>
<p style="padding-left: 30px;">(<a href="http://www.atv.hu">www.atv.hu</a> nem tartozik ebbe a kategóriába, nekik a brand nevük kezdődik A-val!)</p>
<p>Még messze vagyunk tőle, hogy ez a félrevezetés kategóriájába tartozzon jogilag, hiszen, amit nem tilos, azt szabad. De megkérdőjelezhető, hogy a <a href="http://www.az-ugyviteli-program.hu">www.az-ugyviteli-program.hu</a> domain mennyire félrevezető, hiszen azt az érzést kelti, hogy ez a termék a piac legjobbja, sőt csak ez létezik a nagyvilágban.</p>
<p><em>(Elnézést mindenkitől, aki a listában nem szeretne szerepelni, de egy kis link-marketing-ért csak nem fog neheztelni!)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/11/vasarlasra-osztonzo-es-megteveszto-domain-ek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Újabb apró innovációk ügyviteli rendszerünkben</title>
		<link>http://lab.symboltech.hu/2009/11/ujabb-apro-innovaciok-ugyviteli-rendszerunkben/</link>
		<comments>http://lab.symboltech.hu/2009/11/ujabb-apro-innovaciok-ugyviteli-rendszerunkben/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 17:56:55 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[eszköztár]]></category>
		<category><![CDATA[iroda]]></category>
		<category><![CDATA[készlet]]></category>
		<category><![CDATA[számla]]></category>
		<category><![CDATA[villáminformáció]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=574</guid>
		<description><![CDATA[Nagy várakozás előzte meg, fontos mérföldkő a cég számára a Készletkezelő rendszer elkészülte. De ez a marketinges kollégáknak feladat. A mi feladatunk az volt, hogy - mint minden kiadásba, ebben is - valami újdonsággal szolgáljunk.]]></description>
			<content:encoded><![CDATA[<p>Nagy várakozás előzte meg, fontos mérföldkő a cég számára a Készletkezelő rendszer elkészülte. De ez a marketinges kollégáknak feladat. A mi feladatunk az volt, hogy &#8211; mint minden kiadásba, ebben is &#8211; valami újdonsággal szolgáljunk.</p>
<p>Az automatikus adatbázisfrissítés többször bizonyított, minden ügyfelünk frissítette a rendszerét. Ez &#8220;szokott menni&#8221;.  Ami ennél izgalmasabb: <strong>Villáminformációk</strong> és <strong>Eszköztár</strong>.</p>
<p>A főablakon a legfontosabb <strong>céges villáminformációk</strong> megjelennek, ezeke duplakattintással működésre is lehet bírni. Mire jók ezek? Nem arra, hogy elfogyasszuk az ott lévő elemeket. Nem lehet minden nyitott árajánlatot lezárni, mert az ügyfél még gondolkodási időt kér. A rendezetlen számlákat nem lehet egy nap alatt behajtani. De arra jó, hogy az ember a reggeli munkakezdéskor kicsit összeszedettebb lesz, mert tudja, hogy egyáltalán hány feladata van, amivel foglalkoznia kell. Nem lehet kifogás, hogy elfelejtettem megnézni a függőben lévő ajánlatokat!</p>
<p>A másik a <strong>Symbol Ügyvitel Eszköztár</strong>. Egy ügyviteli és egyéb irodai szoftvert egész nap használunk, bámuljuk, jobb esetben berakjuk a gyermekünk képét háttérképnek. De ott van, nézni kell. Ha lecsukom, akkor meg nem látok semmit. Ezt hivatott az eszköztár első, béta verziója megoldani. Kis méretben az ablakon egy kis helyet foglal el, de mégis elérhetőek róla a legfontosabb funkciók, amikkel új számlát, rendelést, stb. vehetünk fel. És nem zavar a böngésző használatában sem, mert a pozíciója egérrel változtatható (elmozdítható &#8211; a szerk.).</p>
<p>Várjuk a felhasználók visszajelzéseit a fenti funkciókkal kapcsolatban!</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/11/ujabb-apro-innovaciok-ugyviteli-rendszerunkben/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL szerver már nem lesz dobozos</title>
		<link>http://lab.symboltech.hu/2009/11/sql-szerver-mar-nem-lesz-dobozos/</link>
		<comments>http://lab.symboltech.hu/2009/11/sql-szerver-mar-nem-lesz-dobozos/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 16:09:04 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[express]]></category>
		<category><![CDATA[msde]]></category>
		<category><![CDATA[mssql]]></category>
		<category><![CDATA[mssqlce]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=568</guid>
		<description><![CDATA[A Microsoft végre meglépte azt, amit már régóta várhattunk. Nem adja olcsón az SQLServer-t! Mindez már a 2008-as verziótól.]]></description>
			<content:encoded><![CDATA[<p>A Microsoft végre meglépte azt, amit már régóta várhattunk. Nem adja olcsón az SQLServer-t! Mindez már a 2008-as verziótól.</p>
<p>Bonyolultságát tekintve már évek óta (SQL2000/MSDE) olyan tudású volt az adatbázis szerver, hogy ahhoz rendszergazdára volt szükség. A 2005/2008 telepítése pedig már több időt vett igénybe, mint egy Windows7 telepítés. Az adatbázis szerver bizonyított nagy rendszerek esetében is. A lépés, hogy az Oracle-lel konkuráljon, logikus volt.</p>
<p>De mi lesz a kis felhasználókkal? Számukra továbbra is lehetőség nyílik az Express változatra, de azt sajnos el kell felejteni, hogy egy 50MB-os telepítőbe belezsúfolva, csak úgy mellékesen a gépre települ a DBserver.</p>
<p>A Microsoft-nak erre is van megoldása:</p>
<ol>
<li>MsSQL CE néven fut a kicsit butácska SQL server, amelyben nincs trigger, tárolt eljárás. Viszont egy gépen fut.</li>
<li>Másik megoldás a rendszergazdával ellátott céges számítógépes rendszer. Végy egy rendszergazdát (hiszen ki tartja karban a licenszkulcsokat, ki frissíti a gépeket, ki szerzi be a tonert, stb.), aki feltelepíti az SQL szervert, beállítja a jogosultságokat és telepíti az ügyviteli rendszert.</li>
</ol>
<p><strong><em>Lassan ideje elgondolkozni, hogy milyen dobozos alternatívái vannak az MsSQL servernek!</em></strong></p>
<p>Addig is az újdonságok: <a href="http://www.microsoft.com/sqlserver/2008/en/us/whats-new.aspx">http://www.microsoft.com/sqlserver/2008/en/us/whats-new.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/11/sql-szerver-mar-nem-lesz-dobozos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A 2880Ft-os számlázó esete Tóth Marival</title>
		<link>http://lab.symboltech.hu/2009/11/a-2880ft-os-szamlazo-esete-toth-marival/</link>
		<comments>http://lab.symboltech.hu/2009/11/a-2880ft-os-szamlazo-esete-toth-marival/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 14:01:17 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[2880]]></category>
		<category><![CDATA[számlázó]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=561</guid>
		<description><![CDATA[Olcsó, nem szép, de legalább elég koros. És ismétlem, olcsónak tűnő. Milyen is lenne ennyi idősen? Ha levetítjük, akkor 12Ft/munkanap az ára. Ez így jól is hangzik, de vajon mit kapunk három McChicken szendvics áráért. Milyen támogatásban részesít minket a nagy testvér? Érdekes megközelítés az, amikor a nagy értékesítési mennyiség reményében olyan alacsony áron kerülnek [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Olcsó, nem szép, de legalább elég koros. És ismétlem, olcsónak tűnő. Milyen is lenne ennyi idősen?</strong></p>
<p>Ha levetítjük, akkor 12Ft/munkanap az ára. Ez így jól is hangzik, de vajon mit kapunk három McChicken szendvics áráért. Milyen támogatásban részesít minket a nagy testvér?</p>
<p>Érdekes megközelítés az, amikor a nagy értékesítési mennyiség reményében olyan alacsony áron kerülnek forgalomba termékek, amelyek semmilyen módon nem tudják fedezni a velük járó költségeket. A kereskedelemben szabályozott, hogy bekerülési ár alatt nem értékesíthető semmi. De ez a szolgáltatási szektorban, ahova a szoftver is tartozik nem működhet. Csupán az jelenthet gátat, ha a minimális járulékokat sem fedezi, miközben legalább egy ügyfélszolgálatos kollégát fent kell tartani.</p>
<p>Az értékesítési partnerek is vonakodnának egy ilyen ár hallatán. 10%-os üzletszerzési jutalék esetén 288Ft/darab? Hmm&#8230;</p>
<p><strong>Ön mit adna 2880Ft-ért, ha utána azt karban is kell tartani? Igen, igaza van, egy nagy semmit&#8230;</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/11/a-2880ft-os-szamlazo-esete-toth-marival/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Találd meg a céget a térképen és vágd ki a monitoron található kupont</title>
		<link>http://lab.symboltech.hu/2009/10/talald-meg-a-ceget-a-terkepen-es-vagd-ki-a-monitoron-talalhato-kupont/</link>
		<comments>http://lab.symboltech.hu/2009/10/talald-meg-a-ceget-a-terkepen-es-vagd-ki-a-monitoron-talalhato-kupont/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 14:20:24 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[kedvezmény]]></category>
		<category><![CDATA[kupon]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=559</guid>
		<description><![CDATA[Nem, nem a Google AdWords-ös kuponokról van szó, amit boldog, boldogtalan osztogat, hanem a vállalkozásokat összefogó Google "Local" nevű kezdeményezésről. Ez eddig csak a tengerentúlon volt elérhető, de ettől a hónaptól már Európában is. És rögtön van egy monitorról kivágható kupon is.]]></description>
			<content:encoded><![CDATA[<p>Nem, nem a Google AdWords-ös kuponokról van szó, amit boldog, boldogtalan osztogat, hanem a vállalkozásokat összefogó Google &#8220;Local&#8221; nevű kezdeményezésről. Ez eddig csak a tengerentúlon volt elérhető, de ettől a hónaptól már Európában is. És rögtön van egy monitorról kivágható kupon is.</p>
<p>Persze nem kell kivágni, elég felírni a promóciós kódot és nálunk például a Symbol Ügyvitel vásárlásánál beváltható a kedvezmény.</p>
<p>A Symbol Ügyvitel kupon itt elérhető: <a href="http://maps.google.com/coupons/page?oi=lbc&amp;did=0_11992209354192365986&amp;hl=en-US&amp;gl=US" target="_blank">Symbol Ügyvitel kupon</a></p>
<p>Egyébként ezt integrálták a Google Maps szolgáltatásba, azaz gyakorlati haszna a cég üzletének térképen való megjelenítése és a térképes találat meghálálása egy kuponnal.</p>
<p>Persze tartozik hozzá Google API is, azaz programozottan is elérhető, nem kell a cégvezetőnek egész nap a google weboldalán kattintgatnia: <a href="http://code.google.com/intl/hu/apis/coupons/">http://code.google.com/intl/hu/apis/coupons/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/talald-meg-a-ceget-a-terkepen-es-vagd-ki-a-monitoron-talalhato-kupont/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dobozos számlázók kontra Windows 7</title>
		<link>http://lab.symboltech.hu/2009/10/dobozos-szamlazok-kontra-windows-7/</link>
		<comments>http://lab.symboltech.hu/2009/10/dobozos-szamlazok-kontra-windows-7/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 20:19:54 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[conflict]]></category>
		<category><![CDATA[dobozos]]></category>
		<category><![CDATA[számlázó]]></category>
		<category><![CDATA[ügyvitel]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=554</guid>
		<description><![CDATA[Mindenkit lázba hoz egy új operációs rendszer megjelenése (Minket is, mondjuk egy kicsit más aspektusól) Pláne akkor, ha 2-3 évet kell rá várni. Az XP óta pedig 8 év telt el. Érdemes szólni egy kicsit a szoftver kultúráról, amely évente változik. Mi a helyzet a dobozos szoftverek területén?]]></description>
			<content:encoded><![CDATA[<p>Mindenkit lázba hoz egy új operációs rendszer megjelenése (Minket is, mondjuk egy kicsit más aspektusól) Pláne akkor, ha 2-3 évet kell rá várni. Az XP óta pedig 8 év telt el. Érdemes szólni egy kicsit a szoftver kultúráról, amely évente változik. Mi a helyzet a dobozos szoftverek területén?</p>
<p>Kezdjük egy kicsit távolabbról. Évente jelennek meg újabb és újabb felhasználói élményt fokozó és a háttérben technológiai előrelépést jelentő fejlesztések. Gondoljunk csak (időrendben) a Java WebStart-ra, a Web2-re, az IWIW web-es átalakítására, amikor is nem HTTP POST-ok szaladgálnak a hálózaton, hanem AJAX-os kérések. Tovább is gondolhatjuk az ötletfolyamot! Vegyük észre a SilverLight előretörését, nem beszélve a web-es számlázókról, amelyek nem használhatóak ugyan nagy mennyiségű ügyfél gyors kiszolgálására, de megvan a maguk előnye hordozhatóság szempontjából. Nézzük csak meg a Vista widget-es megoldását, a hordozható miniszámítógépeken, PDA-kon megjelenő minialkalmazásokat, amelyek web-en mindent összekötnek. Nem utolsóként pedig a Google fejlesztéseit se felejtsük el, a GSM adótorony információkból meghatározott GPS koordináták kérdéskörét.</p>
<p>Ezek mind a felhasználókért vannak, az adatok valahol az interneten keringenek. A felhasználó a @google.com email címe alapján kerül azonosításra és a levelei mellett rögtön beszélgethet a barátaival, twitter-en hozzászólhat valamihez. Mindehhez 3 perc számítógép előtt eltöltött idő elég.</p>
<p>Vannak a nagy, céges rendszerek, a maguk 5-10 fős rendszergazda csapatával, adatbázis klasztereivel, központosított telepítési szabályaival. Nagy pénzintézeket, közmű szolgáltatók nem is tudnának másképp működni.</p>
<p>És vannak az otthon telepíthető, de mégis céges viszonyokat emuláló rendszerek. Ezek a dobozos ügyviteli rendszerek, amelyek közül már szinte csak a számlázórendszerek hálózatosak. A könyvelőprogramokat egy személy használja. (Általában &#8211; szerk.) Na ez MsSQL szrverrel olyan, mintha a webes google levelező helyett SmallBusiness szervert telepítenénk és csak Exchange szolgáltatáson keresztül levelezhetnénk. És mindezt a nagymamámnak kellene telepítenie. Fura, nem?</p>
<p>A cégek jelentős része MsSQL Express-t használ. Ingyenes, belefér a telepítőkészletbe, parancssorból telepíthető, gondozást nem igényel. De ez szerintem csak véletlen. Ez nem oda való! Ne gondoljuk, hogy azért mert laboratóriumi körülmények között működik, kiadható 100-1000, esetleg még több ügyfélnek és felelősséget lehet érte vállalni. Ehhez rendszergazda kell!</p>
<p>A Microsoft is határozottan jelzi, hogy van a nagyvállalati MsSQL szerver, annak a kis méretű kiadása hobbi informatikusoknak, 4GB terjedelemig. (De nem a nagymamámnak való!) És van az egygépes, telepítést és gondozást nem igénylő MsSQL compact (3.5) Ebben sajnos nincsenek meg a nagyvállalati működést támogató komponensek (triggerek, tárolt eljárások, stb.). De a célja nem is az, hogy dobozban áruljunk egy vállalatirányítási rendszert!</p>
<p>Az idő múlásával a fenti gondolat beigazolódni látszik. Már a .NET 3.5 is 1.5 órán át (!!!) települ, hozzá az SQL szerver még egy fél óra. Ez nem a dobozos kategória!</p>
<p>A Windows 7-tel ugyanez a probléma. A biztonsági házirend már nem engedi meg, hogy a felhasználó a webről bármit letöltsöm, majd az gyorsan telepítse. Annyi a kéretlen program, hogy már bizalmi elven nem telepítünk semmit. Azok a dobozos alkalmazások, amelyek még építenek arra, hogy &#8220;Úgyis lehet írni a program files-ba&#8221;, jobb esetben nem indulnak el, rosszabb esetben nem megfelelő működést eredményeznek. Erre példa a program files-ba telepített DBF-es számlázó Vista-n. Más-más felhasználóval belépve a Virtualizációnak &#8220;köszönhetően&#8221; ugyanyolyan sorszámú számlákat lehetett kiállítani és virtuálisan két számlázórendszer futott egymás mellett. Ez aztán az ügyvitel!</p>
<p>Kicsit hosszúra sikerült írásomat hadd zárjam egy élménnyel, amely egy Vista/Win7-re telepített ügyviteli rendszer indításakor ért. Egy MsSQL szerver-t használó programot telepítettem, de mégis további két alkalmazás kérte, hogy engedjem meg nekik publikus portok kinyitását. WTF? Az egyik alkalmazás egy MySQL szerver volt, a másik pedig egy Apache böngésző. A számlázóprogramom egy nem telepített, hanem csak odamásolt, tudja az ég milyen verziószámú szolgáltatást indított el és webszerverré tette a gépem. Abba már bele se merek gondolni, hogy mi lett volna, ha már van egy webszerver a gépen, amire telepítem (mert például az a cégünk belső intranetjének kiszolgálója)?</p>
<p>2009-ben már kevés, ha azt mondjuk, hogy működik ez, csak X, Y és Z gombot kell egyszerre megnyomni és valami valahonnan valahova kell másolni! <strong>A technológia és innováció legyen Veletek! </strong>Az MySQL és Apache párost hagyjátok meg másnak!</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/dobozos-szamlazok-kontra-windows-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Ez számla lehet lehetővé tett ha sírnod kell&#8221; &#8211; automatikusan fordított weboldalak</title>
		<link>http://lab.symboltech.hu/2009/10/ez-szamla-lehet-lehetove-tett-ha-sirnod-kell-automatikusan-forditott-weboldalak/</link>
		<comments>http://lab.symboltech.hu/2009/10/ez-szamla-lehet-lehetove-tett-ha-sirnod-kell-automatikusan-forditott-weboldalak/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 17:13:06 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[fatörzs]]></category>
		<category><![CDATA[kettyenés]]></category>
		<category><![CDATA[számla]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=551</guid>
		<description><![CDATA[Egyre több portál esik abba a hibába, hogy a tartalmakat automatikusan fordítják le idegen nyelvekre és a google számára elérhetővé is teszik. Az alábbi, igen google-barát találatot épp ma kaptuk a Windows7 és számla kapcsolatára. [Forrás] Egyszer a követel van végrehajtható sikeresen, fatörzs távoli és fatörzs hátul -hoz lát a ügyintéző számla helyben. Ha sírnod [...]]]></description>
			<content:encoded><![CDATA[<p>Egyre több portál esik abba a hibába, hogy a tartalmakat automatikusan fordítják le idegen nyelvekre és a google számára elérhetővé is teszik. Az alábbi, igen google-barát találatot épp ma kaptuk a Windows7 és számla kapcsolatára.</p>
<p><strong><span>[Forrás]<br />
Egyszer</span> <span>a</span> <span>követel</span> <span>van</span> <span>végrehajtható</span> <span>sikeresen</span>, <span>fatörzs</span> <span>távoli</span> <span>és</span> <span>fatörzs</span> <span>hátul</span> <span>-hoz</span> <span>lát</span> <span>a</span> <span>ügyintéző</span> <span>számla</span> <span>helyben</span>. <span>Ha</span> <span>sírnod kell</span> <span>megbénít</span> <span>hátul</span>, <span>típus</span> <span>a</span> <span>követel</span>- <em><span>háló</span> <span>felhasználó</span> <span>ügyintéző</span> <span>aktívság</span>:</em> <span>és</span> <span>a</span> <span>ügyintéző</span> <span>számla</span> <span>lesz</span> <span>meghibásodott</span><em>.</em></strong></p>
<p>[Szerk.]<br />
Ha helyben számlázol, akkor legyen távol és hátul egy fatörzs. Ha sírnod kell számlázáskor, ne aggódj, hátul meg leszel bénítva. De én nem hátul sírok&#8230;</p>
<p><strong><span><strong><span>[Forrás]<br />
</span></strong>Mindig</span> <span>ön</span> <span>képessé tesz</span> <span>vagy</span> <span>megbénít</span> <span>a</span> <span>számla</span>, <span>lesz</span> <span>szükség</span> <span>-hoz</span> <span>fatörzs</span> <span>távoli</span> <span>vagy</span> <span>fatörzs</span> <span>-ban</span> <span>-hoz</span> <span>lát</span> <span>-ban</span> <span>tett</span>.</strong></p>
<p>[Szerk.]<br />
A következő bekezdésben a számla bénít meg, de a fatörzs itt is jó szolgálatot tesz.</p>
<p><strong><span><strong><span>[Forrás]<br />
</span></strong>Vagylagosan</span> <span>tudod</span> <span>is</span> <span>képessé tesz</span> <span>vagy</span> <span>megbénít</span> <span>a</span> <span>ügyintéző</span> <span>számla</span> <span>-ból</span> <span>Helyi</span> <span>Politika</span>. <span>Kettyenés</span> <span>-on</span> <span>elkezd</span> <span>étlap</span> <span>és</span> <span>típus</span> secpol.msc <span>-ban</span> <span>kutatás</span> <span>büfé</span> <span>és</span> <span>kettyenés</span> <span>belép.</span></strong></p>
<p>[Szerk.]<br />
Tehát vagy tudok számlázni vagy le leszek bénulva. És ehhez a politikának is köze van. De sebaj, mert kettyenés kell, amikor az étlapod kezded a büfében. A kettyenés az étlap előtt, a büfébe való belépéskor is kell.</p>
<p>[Szerk.]<br />
Összefoglalva. A számlázás alapvetően egy fatörzzsel indul, de politikai behatásra kettyenés kell hozzá a büfében. A fatörzs itt lehet, hogy a büfében kapható sütemény típusa.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/ez-szamla-lehet-lehetove-tett-ha-sirnod-kell-automatikusan-forditott-weboldalak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Új számológép a Windows7-ben</title>
		<link>http://lab.symboltech.hu/2009/10/uj-szamologep-a-windows7-ben/</link>
		<comments>http://lab.symboltech.hu/2009/10/uj-szamologep-a-windows7-ben/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 20:09:03 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[calc.exe]]></category>
		<category><![CDATA[jump list]]></category>
		<category><![CDATA[stickynotes]]></category>
		<category><![CDATA[tálca]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=546</guid>
		<description><![CDATA[Számos újítás és innováció (ami nálunk is kulcsfogalom) mellett régebbről is ismert komponensek is megváltoztak a Windows7-ben. Pár dolog, ami eddig kiderült.]]></description>
			<content:encoded><![CDATA[<p>Számos újítás és innováció (ami nálunk is kulcsfogalom) mellett régebbről is ismert komponensek is megváltoztak a Windows7-ben. Pár dolog, ami eddig kiderült:</p>
<p><strong>Új számológép.</strong> A calc.exe megújult. Tud dátumok közt különbséget számolni, autólizing maradványértékben gondolkodni. És közben az adatokat programozói módban megjeleníteni, ha jól láttam 128bites adatok formájában is.</p>
<p><img class="aligncenter size-medium wp-image-547" title="calcexe" src="http://lab.symboltech.hu/wp-content/uploads/2009/10/calcexe-300x154.png" alt="calcexe" width="300" height="154" /></p>
<p><strong>Beépített Sticky-notes</strong>. Soha nem bíztam a 3rd party alkalmazásokban, ezért nem volt ilyen alkalmazásom. De most lehet, hogy a saját asztalomra teszem az eddig notebookra ragasztott sárga kis cetliket. Arról nem beszélve, hogy a színét is tudom változtatni, nem számít, hogy milyet lehet kapni az OfficeDepot-ban.</p>
<p><strong>Letölthető HUN</strong>. Igen, végre elékeztünk oda, hogy a Windows7 nem kerül kiadásra EN, majd HU nyelven, hanem egy-egy 40MB-os letölthető csomag segítségével a felhasználói felület magyarítható. Ki/bejelentkezés kell hozzá és a Welcome szüveg nem lesz magyar a login-kor, de minden program nyelve megváltozik. Újratelepítés nélkül. 2009-ben már ideje volt.</p>
<p><strong>Pasziánsz is új</strong>. Ez is megváltozott. Félek leírni, de tényleg elhihetitek, hogy csak azért indítottam el, hogy kipróbáljam hátha a számológéppel ez is megújult. És igen.</p>
<p><strong>Shield-ikon</strong>. Shield ikon kék-sárga lett. Az eddigi színes jobban tetszett, de majd ezt is megszokom.</p>
<p><strong>Vezérlőpult</strong>. ControlPanel lenne a neve, de ugye a 40MB-os HUN csomag. Méginkább böngészős (vissza gomb, URL mező) lett. Tetszik.</p>
<p><strong>Alkalmazások visszajelzése.</strong> Az alkalmazások az eddigieknél sokkal több információt tudnak visszaadni az operációs rendszernek. A folyamataikat jelezhetik a taskbar-on (bocsánat a tálcán, 40MB!), korábbi tevékenységeikről információt adhatnak vissza, jump list. (böngészési előzmények a Start Menüben, stb.)</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/uj-szamologep-a-windows7-ben/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2010 &#8211; lassú víz partot mos(t)</title>
		<link>http://lab.symboltech.hu/2009/10/visual-studio-2010-lassu-viz-partot-most/</link>
		<comments>http://lab.symboltech.hu/2009/10/visual-studio-2010-lassu-viz-partot-most/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 06:30:03 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[2010]]></category>
		<category><![CDATA[f#]]></category>
		<category><![CDATA[visual studio]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=539</guid>
		<description><![CDATA[Egyre több információ jelenik meg a Visual Studio 2010-es kiadásáról. A megjelenést biztosan meg fogja előzni egy nagyobb médiakampány, de egyelőre csak blog-okon találhatóak bejegyzések és szépen lassan adagolják az információkat.
]]></description>
			<content:encoded><![CDATA[<p>Egyre több információ jelenik meg a Visual Studio 2010-es kiadásáról. A megjelenést biztosan meg fogja előzni egy nagyobb médiakampány, de egyelőre csak blog-okon találhatóak bejegyzések és szépen lassan adagolják az információkat.</p>
<p>Ez jó így, mert a célközönség intelligens, szakmaiságára büszke fejlesztőcég vagy freelancer fejlesztő. Nekik nem lehet eladni egy terméket a szépen PhotoShop-olt (vagy Paint.NET?) főképernyővel.</p>
<p><img class="aligncenter size-full wp-image-541" title="vs2010" src="http://lab.symboltech.hu/wp-content/uploads/2009/10/vs2010.png" alt="vs2010" width="260" height="114" /></p>
<p>Pár fontos dolgot fedeztünk fel benne, áttekintve a bemutató videókkal megfűszerezetett starting kit-eket</p>
<p><strong>F#. Azaz effshárp!</strong> Ismét nekifutnak, hogy nagy plénummal is megismertessék ezt a programnyelvet. Sem a lehetőségeket, sem az újdonságokat nem fogja értékelni az, aki csak WinForms vagy &#8220;adatbázisos&#8221; alkalmazásokat fejleszt. Ehhez bizony progmat és/vagy BME végzettség kell.</p>
<p><strong>WorkFlow.</strong> Kezdi kinőni gyermekbetegségeit a folyamatkezelésre szakosodott keretrendszer. Ennek épp itt volt az ideje, hiszen a 4.0-s verziónál járnak.</p>
<p><strong>Pararrel extension. </strong>Ehhez csak annyit kell mondanom, hogy Task&lt;T&gt;. Ebből mindenki tudni fogja mire gondolok. Az eddiginél is típusosabb párhuzamosság kezelést valósítottak meg. Ez valószínüleg nem egy nagy innovávió, sokkal inkább <span style="text-decoration: line-through;">hibabiztosabb</span> hibatűrőbb programokat eredményezhet. De csak ezért .NET 4.0-ra váltani nem érdemes.</p>
<p><img class="aligncenter size-medium wp-image-542" title="vs2010splash" src="http://lab.symboltech.hu/wp-content/uploads/2009/10/vs2010splash-300x214.png" alt="vs2010splash" width="300" height="214" /></p>
<p>&#8230; és a szokásos újdonságok: velocity, multi-touch gestures, surface, stb&#8230;</p>
<p>További információk az alábbi linkeken:</p>
<p><a href="http://www.hanselman.com/blog/VisualStudio2010Beta2.aspx">http://www.hanselman.com/blog/VisualStudio2010Beta2.aspx</a></p>
<p><a href="http://blogs.msdn.com/somasegar/archive/2009/10/19/announcing-visual-studio-2010-and-net-fx-4-beta-2.aspx">http://blogs.msdn.com/somasegar/archive/2009/10/19/announcing-visual-studio-2010-and-net-fx-4-beta-2.aspx</a></p>
<p><a href="http://geekswithblogs.net/jolson/archive/2009/10/20/visual-studio-2010-beta-2-training-kit-published.aspx">http://geekswithblogs.net/jolson/archive/2009/10/20/visual-studio-2010-beta-2-training-kit-published.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/visual-studio-2010-lassu-viz-partot-most/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtuális boncolás &#8211; Mozgasd az egész asztalt a kezeddel</title>
		<link>http://lab.symboltech.hu/2009/10/virtualis-boncolas-mozgasd-az-egesz-asztalt-a-kezeddel/</link>
		<comments>http://lab.symboltech.hu/2009/10/virtualis-boncolas-mozgasd-az-egesz-asztalt-a-kezeddel/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 21:39:18 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[autopsy]]></category>
		<category><![CDATA[boncolás]]></category>
		<category><![CDATA[orvostudomány]]></category>
		<category><![CDATA[virtual]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=535</guid>
		<description><![CDATA[Virtual Autopsy. Senkit ne riasszon meg a cím magyar fordítása. Boncolást jelent, de inkább a technológia a fontos. Nagyon &#8220;kellemes&#8221; használati módja, ebben az esetben orvostudományi szempontból, a Microsoft Surface-nek. Ezen a linken lelhető róla több infó és video.]]></description>
			<content:encoded><![CDATA[<p><strong>Virtual Autopsy.</strong> Senkit ne riasszon meg a cím magyar fordítása. Boncolást jelent, de inkább a technológia a fontos. Nagyon &#8220;kellemes&#8221; használati módja, ebben az esetben orvostudományi szempontból, a Microsoft Surface-nek. <a href="http://www.visualiseringscenter.se/1/1.0.1.0/230/1/" target="_blank">Ezen a linken</a> lelhető róla több infó és video.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/bws6vWM1v6g&amp;color1=0xe1600f&amp;color2=0xfebd01&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/bws6vWM1v6g&amp;color1=0xe1600f&amp;color2=0xfebd01&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/10/virtualis-boncolas-mozgasd-az-egesz-asztalt-a-kezeddel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hány táblád van? &#8211; Fejlesztési statisztika</title>
		<link>http://lab.symboltech.hu/2009/09/hany-tablad-van-fejlesztesi-statisztika/</link>
		<comments>http://lab.symboltech.hu/2009/09/hany-tablad-van-fejlesztesi-statisztika/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 10:33:16 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[constraint]]></category>
		<category><![CDATA[index]]></category>
		<category><![CDATA[kivétel]]></category>
		<category><![CDATA[kód]]></category>
		<category><![CDATA[mező]]></category>
		<category><![CDATA[sorok száma]]></category>
		<category><![CDATA[tábla]]></category>
		<category><![CDATA[tárolt eljárás]]></category>
		<category><![CDATA[trigger]]></category>
		<category><![CDATA[unique]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=529</guid>
		<description><![CDATA[Az adatbázis programozás kezdetén a szakértelmet és a munkát a táblák számával tudták mérni. Programozók egymás között és a megrendelők a programozók felé is. Lássunk egy ilyen statisztikát nálunk: Táblák: 73 Mezők: 842 Indexek: 103 Egyediségi megszorítások: 24 Idegen kulcsok: 221 Tárolt eljárások: 26 Triggerek: 23 Kivételek: 9 &#8220;És ez még csak az egyik projektünk&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Az adatbázis programozás kezdetén a szakértelmet és a munkát a táblák számával tudták mérni. Programozók egymás között és a megrendelők a programozók felé is.</p>
<p>Lássunk egy ilyen statisztikát nálunk:</p>
<ul>
<li>Táblák: <strong>73</strong></li>
<li>Mezők: <strong>842</strong></li>
<li>Indexek: <strong>103</strong></li>
<li>Egyediségi megszorítások: <strong>24</strong></li>
<li>Idegen kulcsok: <strong>221</strong></li>
<li>Tárolt eljárások: <strong>26</strong></li>
<li>Triggerek: <strong>23</strong></li>
<li>Kivételek: <strong>9</strong></li>
</ul>
<p>&#8220;<strong>És ez még csak az egyik projektünk</strong>&#8221; lehetne hallani 10 évvel ezelőtt. Az adatbázisok normalizálása miatt a táblák száma már nem releváns információ. Persze (m)értéket képvisel két olyan rendszer összehasonlításakor, amikor egy 5 táblás és egy 470 táblás adatbázis találkozik.</p>
<p>De mi lehet akkor a modern kori mérőszám az üzleti logika mértékére? Nálunk a generált kód mennyisége az. Lássuk, mi mennyi:</p>
<ul>
<li>Sorok száma: <strong>171.591 sor</strong></li>
<li>Karakterek száma: <strong>5.784.477 betű</strong></li>
<li>Fájl bájtok: <strong>13.779.968 bájt</strong></li>
</ul>
<p>Persze nem kézzel gépeltük ezt be. A kód generált, a saját üzleti logika erre épül. Annak mérete pedig titok&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/hany-tablad-van-fejlesztesi-statisztika/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>1000+ fejlesztő dolgozik a Windows Mobile 7-en</title>
		<link>http://lab.symboltech.hu/2009/09/1000-fejleszto-dolgozik-a-windows-mobile-7-en/</link>
		<comments>http://lab.symboltech.hu/2009/09/1000-fejleszto-dolgozik-a-windows-mobile-7-en/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 09:23:11 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[1000]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=521</guid>
		<description><![CDATA[Minden eddiginél kiugróbb mennyiségű erőforrást használ fel a Microsoft az új Mobile platform kialakításához. Ezt is kell tennie, mert már sok a konkurencia.]]></description>
			<content:encoded><![CDATA[<p>Minden eddiginél kiugróbb mennyiségű erőforrást használ fel a Microsoft az új Mobile platform kialakításához. Ezt is kell tennie, mert már sok a konkurencia.</p>
<p>A <a href="http://www.geekzone.co.nz/paulspain/6799">http://www.geekzone.co.nz/paulspain/6799</a> bejegyzésben olvashatjuk, hogy 1000-nél több fejlesztő dolgozik az új platform kialakításán. További 65-70 betöltendő pozíció van szabadon. Ez persze nem összehasonlítható a hazai fejlesztőcégek kapacitásával, sem cégméret, sem pedig az előállítandó termék &#8220;fontosságának&#8221;, pénzügyi, iparági befolyásának tekintetében. De mégis elgondolkodtató.</p>
<ol>
<li>Elképzelhető, hogy tényleg sok a munka, számos feladat vár megoldásra vagy mert nemsokára meg akarnak vele jelenni vagy mert <strong>túl sok hibát találtak</strong> és a szokásos 50-80 fős csapattal ez nem oldható meg.</li>
<li>Másik gondolatom szerint olyan mennyiségű és értékű innovációt építenek bele a termékbe (amely platform és platformra épített alkalmazások együttese), amelyet nem tesznek publikussá egy 15 fős csapat számára. Azaz mindenki csak egy kis szeletet lát belőle. Attól, hogy valaki ott fejlesztő, még nem férhet hozzá a know-how-hoz. <strong>Az Apple-lel vívott harcban ez létfontosságú.</strong></li>
</ol>
<p><img class="aligncenter size-medium wp-image-523" title="wm7" src="http://lab.symboltech.hu/wp-content/uploads/2009/09/windows-mobile-7-1-300x225.png" alt="wm7" width="300" height="225" /></p>
<p>Belső üzenőfalunkon ezt foglalta össze kollégánk:</p>
<p><em>&#8220;Gondolom egy olyan stratégiát próbálnak használni, ahol a feladatokat annyira szét osztják, hogy önmagában ne érjen semmit. Így nem tud elég sok infó kiszivárogni a termékről. És az erőforrások rendelkezésre állása is megnő, fizetni pedig az elvégzett munkáért kell. Leszűkül az üresjárati idő, ami a munkába járós, napi 8 órában foglalkoztatottaknál előfordul (Kávészünet, ebédszünet, óránként 10 perces kötelező szünet…)&#8221;</em></p>
<p>Lehet benne valami&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/1000-fejleszto-dolgozik-a-windows-mobile-7-en/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vajon az ok/mégse koncepciót a lusta programozók találták ki?</title>
		<link>http://lab.symboltech.hu/2009/09/vajon-az-okmegse-koncepciot-a-lusta-programozok-talaltak-ki/</link>
		<comments>http://lab.symboltech.hu/2009/09/vajon-az-okmegse-koncepciot-a-lusta-programozok-talaltak-ki/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 07:19:30 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[beállítások]]></category>
		<category><![CDATA[koncepció]]></category>
		<category><![CDATA[mégse]]></category>
		<category><![CDATA[ok]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[űrlap]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=518</guid>
		<description><![CDATA[Vajon az ok/mégse koncepciót a lusta programozók találták ki?]]></description>
			<content:encoded><![CDATA[<p><em>Belső üzenőfalunkon jelent meg az alábbi elmélkedés:</em></p>
<p><strong>Vajon az ok/mégse</strong><strong> koncepciót a lusta programozók találták ki?</strong><br />
Mert miről is szól ez a dolog?! Az ember kitölt egy űrlapot, ami mondjuk az alkalmazottak adatait tartalmazza. Miután ezt kitöltöttük bezárjuk az űrlapot (Mentés/Ok gomb). Na most ha meg akarjuk nézni az adatlapot, akkor megnyitjuk a listából egy kivetítő ablakon, amit módosítani nem lehet. Bezárni a jól ismert X gombbal lehet. Ha módosítani szeretnénk, akkor megnyitjuk szerkesztésre. Majd bezárjuk a módosított űrlapot (Mentés/Ok gomb).</p>
<p>Tehát, ha új alkalmazottat veszünk fel és nincs Mentés vagy Ok gomb, akkor bezáráskor csak is akkor mentjük el, ha ki lett valami töltve. (Így nem kell Ok vagy Mentés gomb) Ha megnézésre nyitjuk meg, akkor kivetítő ablak. (csak x gombunk van úgyis) Ha módosítani szeretnénk, akkor megnyitjuk szerkesztésre az űrlapot és bezáráskor csak akkor mentjük el, ha változott. (Így sem kell Mentés vagy Ok gomb)</p>
<p>Viszont van egy hatalmas probléma, amit ezzel a módszerrel nem lehet kivédeni: az emberi tényező! Mert az ember egy olyan fajta, aki tévedni szokott. Ezért, megnyithat és beleszerkeszthet egy másik alkalmazott adatlapjába és csak módosítás közben jön rá -&gt; Mégse gomb. Vagy rosszabb esetben kitöröl egy olyan mezőt, amit nem kellett volna, és nem emlékszik mi volt benne -&gt; Mégse gomb, majd újra megnyit.</p>
<p>És mi volt ennek a gondolat mentenek a kiindulópontja? A Safari nevű böngésző beállítások &#8220;űrlapja&#8221;:</p>
<p><img class="aligncenter size-full wp-image-519" title="safarisettings" src="http://lab.symboltech.hu/wp-content/uploads/2009/09/safarisettings.png" alt="safarisettings" width="473" height="549" /></p>
<p><em>A kérdéssel és a koncepció elgondolásával jövőben projektjeinkben foglalkozni fogunk.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/vajon-az-okmegse-koncepciot-a-lusta-programozok-talaltak-ki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google &#8211; ronda és finom</title>
		<link>http://lab.symboltech.hu/2009/09/google-ronda-es-finom/</link>
		<comments>http://lab.symboltech.hu/2009/09/google-ronda-es-finom/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 07:59:12 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[1998]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[gugli]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=509</guid>
		<description><![CDATA[Két nappal ezelőtt a google nyitólapján a beviteli mező és a gomb három betűmérettel nagyobb lett. És mindez a népszerűségét növeli! Manapság, amikor már az 1024x768 dívik és 19col alatt nincs monitor/lcd/tft...]]></description>
			<content:encoded><![CDATA[<p>Két nappal ezelőtt a google nyitólapján a beviteli mező és a gomb három betűmérettel nagyobb lett. És mindez a népszerűségét növeli! Manapság, amikor már az 1024&#215;768 dívik és 19col alatt nincs monitor/lcd/tft&#8230;</p>
<p>Egy érdekes, még éppen elolvasható hosszúságú bejegyzésre bukkatunk. Bevezetője is gondolatébresztő.</p>
<p><img class="aligncenter size-full wp-image-510" title="1998google" src="http://lab.symboltech.hu/wp-content/uploads/2009/09/1998google.jpg" alt="1998google" width="481" height="370" /></p>
<p><strong>&#8220;2003 óta ismert a &#8220;ráguglizok&#8221; avagy angolban a &#8220;to google&#8221; kifejezés. 1998-as alapítása óta a Google naponta 200 millió keresést fogad, és vagyona akkorára növekedett, hogy alapítói méltán bekerülhatnek a világ leggazdagabb emberei listába. De felmerül egy kérdés: Honnan származik a Google pénze?</strong></p>
<p><strong>A cég az újításairól ismert. Na persze ez a fenti képen, amely az első google felületet mutatja 98-ból nem igazán látszik &#8211; hisz immár 11 éve ugyanaz az unalmas felület fogad minket. A stratégia egyszerű: Kell néhány fizetős szolgáltatás, majd a profitot a többi ingyenes szolgáltatásba nyomni. Így nő a népszerűség &#8211; még többen használják a fizetőseket, azt a pént ismét visszaforgatni és így továbbb&#8230; Ördögi kör.&#8221;</strong></p>
<p>A teljes tartalom elolvasható itt: <a href="http://numlockholmes.blog.hu/2009/07/24/title_97900">http://numlockholmes.blog.hu/2009/07/24/title_97900</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/google-ronda-es-finom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Értékesítési partnerünk az Ügyvitelbázis</title>
		<link>http://lab.symboltech.hu/2009/09/ertekesitesi-partnerunk-az-ugyvitelbazis/</link>
		<comments>http://lab.symboltech.hu/2009/09/ertekesitesi-partnerunk-az-ugyvitelbazis/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 10:31:33 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[symbol]]></category>
		<category><![CDATA[számla]]></category>
		<category><![CDATA[ügyvitel]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=507</guid>
		<description><![CDATA[A 2006-ban indult Ügyvitelbázis Magyarország egyetlen mértékadó, ügyviteli programokat értékelő portálja. A mai nappal az Ügyvitelbázis is forgalmazza termékünket, a Symbol Ügyvitelt.]]></description>
			<content:encoded><![CDATA[<p>A 2006-ban indult Ügyvitelbázis Magyarország egyetlen mértékadó, ügyviteli programokat értékelő portálja. A mai nappal az Ügyvitelbázis is forgalmazza termékünket, a Symbol Ügyvitelt.</p>
<p>A cikk bevezetője:</p>
<p>&#8220;<span style="FONT-FAMILY: Verdana; FONT-SIZE: 10pt">A Symbol Ügyvitel sok funkcióval rendelkező, nagy tudású, professzionális számlázó program. Alkalmas forintos- és devizás számlák kiállítására, szállítólevelek, díjbekérők (pro forma) készítésére, vevői megrendelések nyilvántartására, projektek kezelésére. A részletes terméknyilvántartás korlátlan számú eladási árat, akciót, időszaki kedvezményt, terméktulajdonság megadását támogatja. Felár ellenében árajánlat készítéssel, házipénztár- és bank modullal, valamint szerződések kezelésével is kibővíthető. A Symbol Ügyvitel könnyen telepíthető, pendrive-on is hordozható, bárhol használható, mobilis szoftver. Kezelőfelülete nem csak a lehető legkorszerűbb, hanem számtalan kényelmi funkciója miatt kifejezetten felhasználóbarát is. </span>&#8221;</p>
<p><a href="http://www.ugyvitelbazis.hu/index.php?menupont=szoftverteszt.php&amp;cikkid=344" target="_blank">Symbol Ügyvitel-ról szóló cikk teljes változata</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/ertekesitesi-partnerunk-az-ugyvitelbazis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ha Önnek linuxos szervere van, akkor is használhat Symbol Ügyvitelt</title>
		<link>http://lab.symboltech.hu/2009/09/ha-onnek-linuxos-szervere-van-akkor-is-hasznalhat-symbol-ugyvitelt/</link>
		<comments>http://lab.symboltech.hu/2009/09/ha-onnek-linuxos-szervere-van-akkor-is-hasznalhat-symbol-ugyvitelt/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 05:35:43 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mssql]]></category>
		<category><![CDATA[red hat]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[suse]]></category>
		<category><![CDATA[számlázó]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ügyvitel]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=496</guid>
		<description><![CDATA[Az ügyviteli piac dobozos termékeire szinte kivétel nélkül jellemző, hogy Microsft SQL szervert használnak, hiszen elterjedt és viszonylat korán megjelent az ingyenes változata. A működtetésükhöz Windows operációs rendszerre van szükség. Mi szembementünk az árral, válünk kihasználhatja Linux szerverét is.]]></description>
			<content:encoded><![CDATA[<p>Az ügyviteli piac dobozos termékeire szinte kivétel nélkül jellemző, hogy Microsoft SQL szervert használnak, hiszen elterjedt és viszonylat korán megjelent az ingyenes változata. A működtetésükhöz Windows operációs rendszerre van szükség. Mi szembementünk az árral, velünk felhasználhatja Linux szerverét is.</p>
<p>Kb. 10 évvel ezelőtt jelentek meg azok az ügyviteli alkalmazások, amelyek hálózatban is működtek és kihasználták az adatbázis szerverek adta lehetőségeket. (Sajnos még jelenleg is eladósorban vannak olyan termékek, amelyek hálózatosak ugyan, de a működésük sokkal inkább hasonlít egy közös mappában megosztott, egyszerre egy felhasználó által írható Excel fájlra!). A fejlesztőcsapatok szinte mindegyike az MsSql szervert választotta, akkor még a 7.0-s változatot. Azóta előreléptek és az egyik legnagyobb (árbevétel szempontból, hála a magas követési díjaknak) ügyviteli gyártó is nemrég tért ár MsSql 2005-re. Még 10 évvel ezelőtt indultak el ezen az úton.</p>
<p>Korábban plusz költséget jelentett, hogy egy cég Windows alapú szervert állítson be ügyvitele és egyéb rendszere működtetéséhez. Gyakran ajánlották, hogy inkább valamelyik kliens munkaállomáson kerüljön telepítésre a szerver. Gondolom, nem kell mondani, hogy ezáltal annak a munkaállomásnak állandóan bekapcsolva kell lennie (vagy reggel és este kötött sorrendben kell a számítógépeket elindítani) és az adatvesztés veszélye többszörösen jelentkezik, hiszen egy felhasználói számítógép könnyebben fertőződik meg vírussal vagy megy tönkre, mint egy szerver célokat szolgáló számítógép.</p>
<p>Akkor is és most is jellemző, hogy &#8220;<strong>Úgyis van egy Windows szerveretek, hiszen most alapítottátok a céget!</strong>&#8221; jellegű mondatok hangzanak el, előfeltétellel élnek arra vonatkozóan, hogy milyen egy cég informatikai felépítése.</p>
<p>Az ilyen jellegű architektúrális kiépítés közel kétszeresése növelheti a bevezetés költségét, hiszen külön számítógépen, speciális szerver operációs rendszert kell üzemeltetni. (Itt ismét felejtsük el azt a félmegoldást, mely szerint valamelyik munkaállomás lesz a szerver!) Ilyen magas bevezetési költségek szembeötlőek, ha az ügyviteli piac dobozos termékeit 5 (esetleg 6) számjegyű összegekből kívánjuk megvásárolni.</p>
<p><img class="aligncenter size-medium wp-image-500" title="linux" src="http://lab.symboltech.hu/wp-content/uploads/2009/09/Linux_Logo-254x300.png" alt="linux" width="254" height="300" /></p>
<p>Akkor is és most is jellemző, hogy valamilyen ingyenes megoldással valósítják meg a szerver számítógépek szoftveres szintjét. Komplett megoldások vannak fájlrendszer, domain-controller, levelező szolgáltatások megvalósítására Linux operációs rendszerrel.</p>
<p>De ezen nem futnak az eddigi ügyviteli rendszerekhez szükséges szerver komponensek!</p>
<p>A <strong>Symbol Ügyvitel</strong> a pendrive-on való egygépes működéstől kezdve, az egygépes, de telepített verzión át, a hálózatos működésig olyan adatbázis szervert használ, amely Windows-on kívül számos operációs rendszerre engedi telepíteni az adatbázis kiszolgálót. A következő operációs rendszereken van Önnek lehetősége kialakítani az adatbázis-környezetet:</p>
<ul>
<li>Linux x86</li>
<li>Linux x86 (+NPTL)</li>
<li>Linux AMD64</li>
<li>MacOSX Intelx86</li>
<li>MacOSX Intelx64</li>
<li>MacOSX Motorola PowerPC</li>
<li>Solaris 10 i386</li>
<li>Solaris 10 AMD64+EMT64</li>
<li>Windows x86</li>
<li>Windows x64 </li>
</ul>
<p>Linux esetében az ajánlott disztribúciók:</p>
<ul>
<li>Red Hat Enterprise Linux</li>
<li>Suse Linux</li>
<li>Mandrake and Mandriva</li>
<li>Ubuntu Server</li>
<li>Debian</li>
<li>Slackware</li>
<li>CentOS</li>
<li>Gentoo</li>
</ul>
<p>Windows esetében az ajánlott generációk:</p>
<ul>
<li>Windows XP 32/64</li>
<li>Windows Vista 32/64</li>
<li>Windows 7</li>
<li>Windows Server 2003</li>
<li>Windows Server 2008</li>
<li>Windows Server 2010</li>
</ul>
<p><em>A lehetőségek sokszínűségével Ön időt és pénzt takaríthat meg!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/ha-onnek-linuxos-szervere-van-akkor-is-hasznalhat-symbol-ugyvitelt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ügyvitel és számlázás 64 bites operációs rendszeren</title>
		<link>http://lab.symboltech.hu/2009/09/ugyvitel-es-szamlazas-64-bites-operacios-rendszeren/</link>
		<comments>http://lab.symboltech.hu/2009/09/ugyvitel-es-szamlazas-64-bites-operacios-rendszeren/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 14:22:44 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[4GB]]></category>
		<category><![CDATA[64bit]]></category>
		<category><![CDATA[delphi]]></category>
		<category><![CDATA[FoxPro]]></category>
		<category><![CDATA[operációs rendszer]]></category>
		<category><![CDATA[processzor]]></category>
		<category><![CDATA[számla]]></category>
		<category><![CDATA[számlázó]]></category>
		<category><![CDATA[Windows XP]]></category>
		<category><![CDATA[x64]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=479</guid>
		<description><![CDATA[Ma már nehéz nem 64bites processzort vásárolni, mégis elvétve találkoztunk csak 64bites operációs rendszerrel Magyarországon és ők sem az ügyvitel miatt választották ezt a technológiát. Mi mégis fontosnak tartottuk, hogy az x64-es operációs rendszereken is működjön a termékünk.]]></description>
			<content:encoded><![CDATA[<p>Ma már nehéz nem 64bites processzort vásárolni, mégis elvétve találkoztunk csak 64bites operációs rendszerrel Magyarországon. És ők sem az ügyvitel vagy a számlázás miatt választották ezt a technológiát. Mi mégis fontosnak tartottuk, hogy az x64-es operációs rendszereken is működjön a termékünk.</p>
<p>Jópár hónapja, aki számítógépet vásárol és a neves gyártók termékét választja vagy egyszerűen saját maga rakja össze a számítógépét, nehezen tud olyan processzort választani, amely ne lenne 64bites üzemmódra képes. A 32bit és 64bit közti átállás még jónéhány évig el fog tartani, jelenleg az a trend bizonyult tartósnak, mely szerint a processzorok belső felépítése 64bites, de a rajtuk futó operációs rendszer 32bites.</p>
<p><strong>Miért így használjuk?</strong></p>
<p>A számítógépek gyártói, akik OEM operációs rendszerrel telepítve értékesítik termékeiket, nem véletlenül választották ezt a kombinációt. A 64bit kihasználásához legalább 4GB ram vagy több szükséges és a teljes funkcionalitást csak olyan szerverekben lehet kihasználni, ahol 1-nél (sőt 8-nál is) több processzor végzi a dolgát. Ez egyelőre nem jellemző az asztali munkaállomásokra vagy notebookokra.</p>
<p>A Microsoft a Windows XP 64bites változatát nem is jelentette meg magyarul, ezzel is jelezve, hogy úgysem érdemes az operációs rendszereket egyelőre ennyire átalakítani. A szoftverek sincsenek még felkészítve rá (Office, Photoshop, Nero, stb.) Használjon mindenki 32bites XP-t, Vista-t a számítógépén, legyen az akárhány bites processzorral felszerelve.</p>
<p><strong>A régi ügyviteli és számlázó rendszeremmel mi lesz?</strong></p>
<p>A korábbi fejlesztőeszközökkel készült termékek (Delphi, FoxPro) hallgatólagosan működnek a Windows XP 64bites változatán is, hála a processzorok azon kiegészítésének, amely a 32 bites programok működését támogatja. Ezek az alkalmazások egy 32 bites számítógépet látnak, maximum 2GB rammal. Ezen kívül számos probléma adódik abból, hogy a szükséges szoftverkomponensek (Jet driver, ActiveX könyvtárak) nem állnak rendelkezésre 64bites verzióban.</p>
<p><strong>Mi a helyzet a Symbol Ügyvitellel?</strong></p>
<p>A Symbol Ügyvitel már a tervezésekor arra készült, hogy futtatható legyen 64bites operációs rendszeren is, sőt a program futtatható állományai ilyen esetben 64bites működésre optimalizáltak. Minden összetevőjének (adatbázis szerver, kliens könyvtárak) létezik 64bites változata. A telepítő a környezetnek megfelelő komponenseket telepíti és ha kell, kihasználhatja a 4GB-nál több memóriát is.</p>
<p><img class="aligncenter size-full wp-image-488" title="cdsmall" src="http://lab.symboltech.hu/wp-content/uploads/2009/09/cdsmall.png" alt="cdsmall" width="300" height="300" /></p>
<p>Hogy a telepítőkészlet méretét minimalizáljuk, a ritkán használt, 64bites összetevők telepítéskor az internetről töltődnek le.</p>
<p>A 64bites processzorokról olvasható egy részletes leírás itt: <a href="http://en.wikipedia.org/wiki/X86-64">http://en.wikipedia.org/wiki/X86-64</a></p>
<p>További 64bites információk magyarul: <a href="http://www.start64.hu">http://www.start64.hu</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/09/ugyvitel-es-szamlazas-64-bites-operacios-rendszeren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>25% áfa &#8211; számmisztika</title>
		<link>http://lab.symboltech.hu/2009/08/25-afa-szammisztika/</link>
		<comments>http://lab.symboltech.hu/2009/08/25-afa-szammisztika/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 07:33:15 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[12345]]></category>
		<category><![CDATA[25%]]></category>
		<category><![CDATA[9876]]></category>
		<category><![CDATA[áfa]]></category>
		<category><![CDATA[bruttó ár]]></category>
		<category><![CDATA[szám]]></category>
		<category><![CDATA[számmisztika]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=468</guid>
		<description><![CDATA[Bruttó árkezelés tesztelése közben figyeltünk fel a következő - már-már - számmisztikai érdekességre.]]></description>
			<content:encoded><![CDATA[<p>Bruttó árkezelés tesztelése közben figyeltünk fel a következő &#8211; már-már &#8211; számmisztikai érdekességre.</p>
<p>Ha egy királyságban 25% áfát vetnek ki a polgárokra és egy termék nettó ára <strong>9876</strong> fabatka, akkor a bruttó árcímkén <strong>12345</strong> fabatka fog szerepelni.</p>
<p style="text-align: center;"><strong>9876 &#8211; 12345 </strong>minden számjegyet pontosan egyszer használtunk fel.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/25-afa-szammisztika/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Öt Világ &#8211; Szoftverfejlesztés dimenziói</title>
		<link>http://lab.symboltech.hu/2009/08/ot-vilag-szoftverfejlesztes-dimenzioi/</link>
		<comments>http://lab.symboltech.hu/2009/08/ot-vilag-szoftverfejlesztes-dimenzioi/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 19:04:53 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[fejlesztés]]></category>
		<category><![CDATA[joel]]></category>
		<category><![CDATA[programozó]]></category>
		<category><![CDATA[szoftver]]></category>
		<category><![CDATA[uml]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=434</guid>
		<description><![CDATA[Joel Spolsky írása ugyan 2002-es dátumú, de még mindig tartalmaz igazságokat. Lássuk magyarul.]]></description>
			<content:encoded><![CDATA[<p><em>Joel Spolsky írása ugyan 2002-es dátumú, de még mindig tartalmaz igazságokat. Lássuk magyarul!</em></p>
<p>Van egy nagyon fontos dolog, amit egyszer sem említenek a programozásról és szoftverfejlesztésről szóló könyvek, és amiért néha félreértjük egymást. Te szoftverfejlesztő vagy. Én is. Ám nem biztos, hogy ugyanolyan céljaink és követelményeink vannak. Tulajdonképpen a szoftverfejlesztésből több fajta létezik, és mindegyik külön világra más és más szabályok érvényesek.</p>
<p>Ha egy UML-ről szóló könyvet olvasol, sehol sem találod meg benne, hogy az alkalmatlan eszközmeghajtók írásakor. Vagy olvashatsz egy olyan cikket, ami azt írja, hogy „A 20MB-s futtatókörnyezet (a .NET-hez) nem lehet akadály”, de nem mondja ki a nyílvánvalót: ha csak egy 32KB ROM-al rendelkező csipogóba írsz, akkor igenis van jelentősége!</p>
<p>Úgy gondolom, öt különálló világról beszélhetünk, amik néha átfedik egymást, de gyakran nem. Ezek:</p>
<ol>
<li>dobozos</li>
<li>belső</li>
<li>beépített</li>
<li>játék</li>
<li>egyszer használatos</li>
</ol>
<p>Ha a legújabb Extrém Programozásról szóló könyvet olvasol, vagy Steve McConnel remek könyveit, vagy akár a Joel on Software-t, esetleg a Software Development magazint, egy rakás olyan kijelentéssel találkozhatsz, hogy így vagy úgy fejlessz szoftvert, de arról nem szól a fáma, miféle fejlesztésről is beszélnek. Ez azért nem szerencsés, mert a különböző világokban lehetséges, hogy másképp kell csinálnod a dolgokat.</p>
<p><strong>Nézzük át röviden a kategóriákat!</strong></p>
<p><strong>Dobozos az a szoftver</strong>, amit „a vadonban” használ nagy számú felhasználó. Talán még be is dobozolják, és a CompUSA-ban is árulják, de akár internetről letölthető is lehet. Lehet pénzes vagy shareware, nyílt forrású, GPL-es, akármi – a lényeg az, hogy akár ezrek vagy milliók használják.</p>
<p>A dobozos szoftvernek van néhány problémája, ami két különleges tulajdonságából adódik:</p>
<ul>
<li>mivel olyan sok felhasználó van, akiknek más megoldások is rendelkezésükre áll, a felhasználói felületnek az átlagosnál egyszerűbbnek kell lennie, hogy sikeres lehessen</li>
<li>mivel olyan sok számítógépen kell futnia, a kódnak különösen rugalmasnak kell lennie, már ami a különböző konfigurációkat illeti. Múlt héten kaptam egy olyan hibát a CityDesk-re, ami csak lengyel Windows-nál fordul elő, mivel az operációs rendszerben a jobb Alt-ot kell használni a speciális karakterek beírásához. Kipróbáltuk Windows95-ön, 95OSR2-n, 98-an, 98SE-n, Me-n, NT 4.0-n, Win2000-en, és WinXP-n. Teszteltük IE 5.01-en, 5.5-ön, és 6.0-n. Teszteltük amerikai, spanyol, francia, héber, és kínai Windows-szal. Ám még nem foglalkoztunk lengyellel.</li>
</ul>
<p>A dobozos szoftver három nagyobb fajtája létezik. A nyílt forrású szoftvert leggyakrabban úgy fejlesztik, hogy senki sem kap pénzt a fejlesztésért, ami a dinamikát nagyban befolyásolja. Például azokat a funkciókat, amik nem élvezetesek, nem készítik el a lelkesedésből fejlesztő csapat, és, ahogy Matthew Thomas ékesszólóan rámutat, ez a használhatóságot ronthatja. A fejlesztés valószínűleg nagy földrajzi távolságokat ölel át, ami a csapat kommunikációját radikálisan megváltoztathatja. A nyílt forrású világban elég ritka a személyes megbeszélés, ahol táblára dobozokat és nyilakat rajzolnak. Így a tervezési döntéseket, amik pont a dobozok és nyilak rajzolásából nyernék lényegüket, csak kis hatékonysággal hozzák meg. Végeredményben a földrajzilag szétszórt csapatok sokkal jobbak meglévő szoftverek lemásolásában, ahol elenyésző mennyiségű tervezés szükséges.</p>
<p><strong>A tanácsadószoftver</strong> tulajdonképpen csak egy változata a dobozos szoftvernek, amit annyit kell finomhangolni és installálni, hogy egy sereg tanácsadóra van szükség a bevezetéshez, aranyárban. Többnyire a CRM és CMS csomagok esnek ebbe a kategóriába. Az ember könnyen úgy érezheti, hogy ezek valójában nem csinálnak semmit, és ez csak egy indok, hogy tanácsadók tucatjait szabadítsák rá, 300 dolláros órabérrel. Bár a tanácsadószoftver dobozos szoftvernek van álcázva, az implementáció magas költsége alapján inkább belső szoftvernek minősül.</p>
<p><strong>A kereskedelmi webalapú szoftver</strong>, mint a Salesforce.com, vagy az eBay változatok még mindig igénylik a könnyű kezelhetőséget, és hogy minden böngészőn fussanak. Bár a fejlesztők megengedhetik maguknak azt a luxust, hogy (legalább egy kicsit) ellenőrizhessék a telepítési környezetet – a számítóközpontban levő gépeket –, kezelniük kell a böngészők széles skáláját, és a felhasználók nagy számát, így ezt én a dobozos szoftver kategóriájába sorolom.</p>
<p><strong>A belső szoftvernek</strong> csak egy cég számítógépein kell futnia, ugyanolyan szituációban. Ezt lényegesen egyszerűbb fejleszteni. Számos olyat feltételezhetsz, ami a futási környezettel kapcsolatos. Megkövetelheted az Internet Explorer, a Microsoft Office, vagy akár a Windows egy verzióját. Ha grafikont akarsz csinálni, arra ott lesz az Excel. Nálunk mindenkinek van Excelje. (Ám próbálnád ugyanezt a dobozos szoftverednél, és már el is vesztetted a potenciális vásárlóid felét.)</p>
<p>A használhatóság kevésbé fontos, mivel csak meghatározott számú felhasználónak kell a programot használnia, és ők sem választhatnak másik szoftvert maguknak. A fejlesztési sebesség sokkal fontosabb. Mivel a fejlesztési költségek csak egy cégen belül oszlik el, az elosztható fejlesztési erőforrások is lényegesen kevesebbek. A Microsoft megengedheti magának, hogy ötszáz millió dollárt költsön egy operációs rendszer fejlesztésére, ami egy átlagembernek csak 80 dollárjába kerül. Ám amikor a Detroit Edison energiakereskedelmi szoftvert fejleszt, a befektetésnek ésszerűnek kell lennie az egész társaságnak. Értelmes ROI eléréséhez nem költhetsz annyit, amennyit egy dobozosra költenél. Így sajnos a belső szoftverek nagyon csúnyák.</p>
<p>A beépített szoftverek annyiban egyediek, hogy egy hardverbe kerülnek, és szinte sosem frissíthetők. Ez egy teljesen más világ. A minőségi követelmények itt sokkal magasabbak, mert nincs második lehetőség. Valószínűleg lényegesen lassabb processzorral kell dolgoznod, így sokkal több időt kell szánnod optimalizálásra. A gyorsaság lényegesebb, mint a kód szépsége. Kevesebb be- és kimeneti eszköz állhat rendelkezésre. A múlt héten bérelt autómban a GPS rendszer IO rendszere annyira szánalmas volt, ami szinte teljesen használhatatlanná tette. Próbáltál már ilyen ketyerén beírni egy címet? Megjelenik a képernyőn egy „billentyűzet”, és a nyilakkal kell kiválasztani az öt, egyenként 9 karaktert tartalmazó mátrixból a betűket (a link további illusztrációkat tartamaz a felhasználói felületről. A saját kocsimban levő GPS érintőképernyős, ami a felületet remekül feldobja. Ám elkalandoztam).</p>
<p><strong>A játékok</strong> két okból kifolyólag egyediek. Előszöris a játékfejlesztések ökonómiája sikerorientált. Néhány játék sikeres lesz, de sokkal több van bukásra ítélve. Ha pénzt akarsz keresni a játékpiacon, jó, ha ezt felismered, és tartasz néhány sikeres játékot a portfóliódban, hogy a kirobbanó siker nyeresége fedezze a megbukott játékok veszteségeit. Ez inkább a filmszakmához hasonlít, mint szoftvereshez.</p>
<p>A játékfejlesztések nagyobb problémája az, hogy itt is csak egy verziód van. Ha már egy felhasználód végigjátszotta a Duke Nukem 3D-t, nem fog a Duke Nukem 3.1D-re frissíteni csak néhány hiba és pár új fegyver miatt. Néhány kivételtől eltekintve ha valaki már végigjátszott egy játékot, már unni fogja az újra játszást. Így a játékoknak ugyanolyan minőségi követelményeik vannak, mint a beépített szoftvereknek, és hihetetlen nagy pénzügyi szükséglet, hogy elsőre jó legyen. A dobozos szoftverek fejlesztőinek megadatott az a luxus, hogy ha az 1.0-ás verzió nem felelt meg az emberek igényeinek, a 2.0-s talán meg fog.</p>
<p><strong>Végül az egyszer használatos kód</strong> az, amit csak azért ácsolsz össze ideiglenesen, hogy valami mást elérj, amit nagy valószínűséggel sosem kell többet használnod, miután azt a valamit elérted. Például írhatsz egy olyan kis shell szkriptet, ami egy bemeneti fájlt úgy masszíroz meg, hogy az olyan formátumba kerül, amit már valami más program már fel tud dolgozni.</p>
<p><strong>Lehetnek még olyan szoftverfajták, amiket kifelejtettem.</strong></p>
<p>Egy fontos dolgot tudnod kell: amikor olyan könyveket olvasol programozási metodológiákról, amiket egy teljes munkaidős szoftverfejlesztő guru / konzulens írt, szinte teljesen biztos, hogy belső céges szoftverfejlesztésről ír. Nem dobozos termékről, nem beépített szoftverről, és biztos, hogy nem játékról. Hogy miért? Mert a cégek bérlik fel ezeket a gurukat. Ők fizetik a számlát (hidd el, az id software nem fogja felvenni Ed Yourdon-t, hogy a struktúrált analízisről beszéljen).</p>
<p>Múlt héten Kent Beck azt állította, hogy valójában nincs is szükség hibakövető adatbázisokra, ha Extrém Programozást használsz, mert a páros programozás (folyamatos kódvizsgálattal) és a teszt-irányított fejlesztés (ami garantálja, hogy az automatikus tesztek 100%-osan lefedik a kódot) azt eredményezi, hogy nem lesz egy hibád sem. Ez valahogy nem tűnt igaznak a szememben. Bele is néztem a saját hibakövető adatbázisunkba, mi is az, ami elfoglal minket.</p>
<p>Na lám csak, azt vettem észre, hogy nagyon kevés hibát vettünk volna észre páros programozással, vagy teszt-irányított fejlesztéssel. A legtöbb „hibánk”, amit XP-ben történetnek hívnak tulajdonképpen fejlesztési kérések. A hibakövető rendszert egyszerűen arra használjuk, hogy ne felejtsük el, priorizáljuk, és menedzseljük azokat az apró csiszolásokat és nagy funkciókat, amiket ki akarunk fejleszteni.</p>
<p>Sok más hiba pedig csak akkor került a felszínre, amikor már a „mezőkön” régóta használták. A lengyel billentyűzet dolog. Ezt páros programozással lehetetlen észrevenni. Aztán azok a logikai tévedések, amik nálunk sosem jöttek elő úgy, ahogy a különböző funkciók együttműködnek. Minél nagyobb és bonyolultabb egy program, annál több a párbeszéd olyan funkciók között, amire nem is gondolsz. Egy bizonyos nem várt karaktersorozat (ha tudni akarod, a „{${?” az) összezavarja a lexert. Néhány ftp kiszolgáló hibát generál, ha egy olyan fájlt akarsz törölni, ami nem is létezik (a mi ftp kiszolgálónk nem kiabál, így ez elő sem fordult nálunk).</p>
<p>Figyelmesen végigtanulmányoztam az összes hibát. 106 hiba közül, amit a CityDesk szervízcsomag kiadásában megjavítottunk, pontosan ötöt tudtunk volna páros programozással, vagy teszt-vezérelt tervezéssel kivédeni. Sokkal több hibánk volt olyan, amikről tudtunk, amikről úgy gondoltuk, nem fontosak (kivéve persze a vásárlóinkat!), mint olyanok, amiket az XP módszerrel kivédhettünk volna.</p>
<p>Ám Kent-nek igaza van a másik fajta fejlesztésben. A legtöbb céges fejlesztésű alkalmazásnál ezek egyike sem lett volna hiba. A program lefagy érvénytelen bevitelkor? Futtasd újra, de ezúttal figyelj a {${?-kre! Aztán úgyis csak egy fajta ftp kiszolgáló lesz, és a cégben senki sem fog lengyel Windows-t használni.</p>
<p>A szoftverfejlesztés legnagyobb része ugyanaz, akármiféle projekten is dolgozol, de nem teljesen. Ha valaki metodológiáról beszél, gondolkodj el azon, hogy ez hogy hatna a te munkádra. Gondolkodj el azon, hogy milyen környezetben is van a másik. Steve McConnell, Steve Maguire, és jómagam egy nagyon szűk sarokból jövünk: a dobozos tömegcikk táblázatkezelő alkalmazások világából, amit Redmondban, Washington államban írtak. Nálunk magasabb a léc az egyszerű használatnál, és alacsonyabb a hibáknál. Az összes többi módszertan guru azzal keresi a betevőt, hogy konzultál saját céges fejlesztéseknél, és ők erről is beszélnek. Bárhogyis, mindannyian tudnunk kellene tanulni egymástól.</p>
<p><em>Forrás: </em><a href="http://js.hu/jos/"><em>http://js.hu/jos/</em></a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/ot-vilag-szoftverfejlesztes-dimenzioi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adathordozóinkat a szuperlemez.hu készíti</title>
		<link>http://lab.symboltech.hu/2009/08/adathordozoinkat-a-szuperlemez-hu-kesziti/</link>
		<comments>http://lab.symboltech.hu/2009/08/adathordozoinkat-a-szuperlemez-hu-kesziti/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 12:40:49 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[adathordozó]]></category>
		<category><![CDATA[cd]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=476</guid>
		<description><![CDATA[Symbol Ügyvitel termékünk adathordozóit a szuperlemez.hu készíti. Dícséret illeti őket több szempontból is!]]></description>
			<content:encoded><![CDATA[<p>Symbol Ügyvitel termékünk adathordozóit a szuperlemez.hu készíti. Dícséret illeti őket több szempontból is!</p>
<ul>
<li>Precíz információkkal szolgáltak a kreatív elkészítéséhez (PSD források, leírás).</li>
<li>Gördülékenyen intézték a rendelésfelvételt</li>
<li>Határidőre teljesítették a vállalásukat</li>
</ul>
<p>Az elkészült anyag (tok+lemez) mindenben megfelel az elvárásainknak.</p>
<p><a href="http://www.szuperlemez.hu">www.szuperlemez.hu</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/adathordozoinkat-a-szuperlemez-hu-kesziti/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech.Ed 2009 Berlin</title>
		<link>http://lab.symboltech.hu/2009/08/tech-ed-2009-berlin/</link>
		<comments>http://lab.symboltech.hu/2009/08/tech-ed-2009-berlin/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 07:22:23 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[green]]></category>
		<category><![CDATA[konferencia]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[tech.ed]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=425</guid>
		<description><![CDATA["Berlin felett az ég" című klasszikus film címe (rendező Wim Wanders) többször elhangzott a nemrég befejeződött berlini atlétika világbajnokság kapcsán, mivel az eső többször eleredt. 

Örömmel jelentjük, hogy a Microsoft Tech.Ed zárt helyen kerül megrendezésre!

Berlin 2009. november 9-13.]]></description>
			<content:encoded><![CDATA[<p>&#8220;Berlin felett az ég&#8221; című klasszikus film címe (rendező Wim Wanders) többször elhangzott a nemrég befejeződött berlini atlétika világbajnokság kapcsán, mivel az eső többször eleredt. Örömmel jelentjük, hogy a Microsoft Tech.Ed zárt helyen kerül megrendezésre! Berlin 2009. november 9-13.</p>
<p>Részletes információ: <a href="http://www.microsoft.com/europe/teched/" target="_blank">itt</a></p>
<p style="text-align: center;"><img class="aligncenter" title="tech.ed" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/btn_techedonline3.gif" alt="tech.ed" width="290" height="95" /></p>
<p>Néhány érdekes témakör a konferencia sorozatból:</p>
<p><strong>Cloud Computing</strong></p>
<p>Simon Guest is the Senior Director of Technical Strategy in the Developer and Platform Evangelism (DPE) group at Microsoft, responsible for helping developers worldwide deliver practical and elegant solutions using Microsoft technologies. Since joining Microsoft in 2001, Simon has led the Microsoft Platform Architecture Team, acted as Editor-in-Chief of the Microsoft Architecture Journal, pioneered the area of .NET and Java 2 Enterprise Edition (J2EE) interoperability, worked with customers on mission critical .NET solutions, and has been a regular speaker at many conferences worldwide, including PDC, TechEd, and JavaOne. Before joining Microsoft, and with over 18 years in the IT industry, Simon held architect-level positions at many organizations, including Zoho Corporation, a Silicon Valley startup; Conchango, a UK based consultancy; and Herbert Smith, a leading law firm in the UK. He also worked for several years at GEC in its semiconductor manufacturing division. Simon was born in England, and has been living in the U.S. for approximately eight years. He holds a Masters Degree in IT Security from the University of Westminster, London, and a Higher National Certificate in Software Engineering from Plymouth College. Simon is the author of numerous technical articles and books about Java, Microsoft .NET, and Web technologies, as well as maintaining a blog at http://simonguest.com.</p>
<p><strong>Green IT</strong></p>
<p>Microsoft believes in the potential of software to drive innovations that can help address many of today&#8217;s tough environmental challenges. Find out how Microsoft products and technologies can help your organisation improve efficiency, save money, and minimise its environmental impact.</p>
<p><strong>Unified Communication</strong></p>
<p>Microsoft unified communications technologies use the power of software to deliver complete communications—messaging, voice, and video—across the applications and devices that people use every day. The Unified Communications track strengthens your knowledge of the Microsoft Unified Communications platform and technologies, including Microsoft® Exchange Server 2010, Microsoft® Office Communications Server 2007 R2, Microsoft Office Live Meeting and Microsoft® Exchange Online. Explore how you can streamline your organisation’s communications, build presence-aware applications, roll out an on-premise, hosted (or combination thereof) messaging and collaboration system, and much more!</p>
<p><strong>Windows Embedded</strong></p>
<p>Enhance your technical skills in the development and implementation of Windows® Embedded operating systems. Learn how to easily build reliable, powerful, and intelligent smart connected devices utilising our end-to-end development tools, support, and resources. Windows Embedded operating system technology has been deployed in the broadest and most demanding environments, and is at the forefront of providing a solid foundation for the next generation of 32-bit embedded devices. Windows Embedded products help you provide highly customised device designs on a flexible platform with easy-to-use development tools.</p>
<p><strong><em>Mi ott leszünk. Legyél ott Te is, ha érdekel a témák valamelyike!</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/tech-ed-2009-berlin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Amikor a szoftver gyártója írja és terjeszti a vírust &#8211; Win32/Induc</title>
		<link>http://lab.symboltech.hu/2009/08/amikor-a-szoftver-gyartoja-irja-es-terjeszti-a-virust-win32induc/</link>
		<comments>http://lab.symboltech.hu/2009/08/amikor-a-szoftver-gyartoja-irja-es-terjeszti-a-virust-win32induc/#comments</comments>
		<pubDate>Thu, 20 Aug 2009 13:57:39 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[delphi]]></category>
		<category><![CDATA[exe]]></category>
		<category><![CDATA[koncepció]]></category>
		<category><![CDATA[vírus]]></category>
		<category><![CDATA[Win32/Induc]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=418</guid>
		<description><![CDATA[Egy érdekes koncepció jelent meg a vírusok egyébként is kacifántos világában. Amikor a szoftver gyártója írja, fordítja és terjeszti a vírust. Terjedési módja nem hagyományos, de be kell látni, hogy működik. A virusok világában egyensúlyi állapot nincs. A fertőzött egyedek száma vagy nő vagy csökken. Ebben az esetben nőtt, de a terjedés módja annyira profán, hogy májusi megjelenése óta csak a héten derült rá fény.]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Egy érdekes koncepció jelent meg a vírusok egyébként is kacifántos világában. Amikor a szoftver gyártója írja, fordítja és terjeszti a vírust. Terjedési módja nem hagyományos, de be kell látni, hogy működik. A vírusok világában egyensúlyi állapot nincs. A fertőzött egyedek száma vagy nő vagy csökken. Ebben az esetben nőtt, de a terjedés módja annyira profán, hogy májusi megjelenése óta csak a héten derült rá fény.</p>
<h5>Hogy is működik?</h5>
<p>A Delphi, mint fordítóprogram tartalmazza a fordításkor felhasznált bináris részek (ami miatt egy üres Delphi alkalmazás kb. 320kB) forráskódját is. (Ezt gyakran a programozók ki is szokták használni, például amikor az Igen/Nem kérdést feltevő ablakon nem a YES/NO feliratokat akarják látni). A vírus ezen forrásfájlok közül a SysConst.pas fájlt átírja, kibővíti, majd rögtön le is fordítja a gépen lévő Delphi-vel és .DCU állományt állít elő belőle. Bármilyen lefordított EXE, akár egy piaci termék, akár egy cég belső használatára szánt terméke tartalmazza a vírust és annak terjedéséhez minden rendelkezésre áll. Ha van a gépen Delphi.</p>
<h5 style="text-align: center;"><img class="aligncenter size-full wp-image-420" title="Delphi6" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/Delphi6.jpg" alt="Delphi6" width="450" height="300" /></h5>
<h5>Vesézzük ki egy kicsit, hogy is tud ténylegesen terjedni?</h5>
<p>Valamelyik Delphi-vel foglalkozó szoftverfejlesztő cég (Magyarországon sok ilyen van) feltelepíti a konkurrens cég termékét, amely vírusos. Ezek után az ő termékei is vírusosak lesznek. Ilyen pofon egyszerű?</p>
<h5>Mikor nem tud terjedni a vírus?</h5>
<p>A fenti példa azonban túl speciális. Cégen belül általában a vírus terjedése meg kell, hogy álljon a fejlesztői gépeken, sőt azok között sem tud könnyen terjedni. Általában a fejlesztett programokat forrásfájlokból fordítja le egy fejlesztő. Így az EXE-k nem cserélődnek fejlesztők között. A cég többi munkatársa, akik EXE-ket kap (telepítő készlet, tesztelés, értékesítés, terméktámogatás) pedig általában nem birtokol Delphi-t a gépén.</p>
<h5>Ahogy mi gondoljuk&#8230;</h5>
<p>A korábban írtak szerint a terjedés egyik módja a kis szoftverfejelsztő cégek, akik egymás konkurrens termékeit a fejlesztőkkel próbáltatják ki, táptalajd adva a vírusnak. A másik terjedési mód, ha a Delphi-t gyártó cég teszi közzé a fejlesztőeszköz egy vírusos példányát. A legvalószínübb azonban, hogy valamilyen &#8220;Harmadik gyártó (3rd party)&#8221; eszközének telepítése során kerül rá a fejlesztői gépre a vírusos tool. De a terjedésnek itt is meg kellene szakadnia. Mégsem így történik.</p>
<h5 style="text-align: center;"><img class="aligncenter size-medium wp-image-421" title="veszelyesvirus" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/veszelyesvirus-300x225.jpg" alt="veszelyesvirus" width="300" height="225" /></h5>
<h5>Néhány technikai adat, félelemkeltés helyett</h5>
<p><strong>Szükséges Delphi verziók:</strong> D4, D5, D6 vagy D7. BDS vagy Delphi for .NET nem alkalmas erre.</p>
<p><strong>Csak koncepció: </strong>A vírus kárt nem okoz, a terjedés módszerének igazolására készült.</p>
<p><strong>Magyarországon csak egy:</strong> Hazákban állítólag csak egy helyen jelent meg, és mivel terjedése lassú, nem várható nagy fertőzés.</p>
<p><strong>Víruskeresők már ismerik:</strong> Pár napja a víruskeresők már felismerik a kártékony kódot. Mindezt abban a pillanatban, amikor a fejlesztő az EXE-t előállítja. Pontosabban amikor nem állítja elő, mert a víruskereső karanténba zárja azt.</p>
<p><strong>Microsoft .NET:</strong> A .NET-re a vírus veszélytelen, a közös kódrészletek mind az operációs rendszer részei (illetve a futtatókörnyezet részei), ilyen jellegű kódelhelyezésre nincs lehetőség.</p>
<p><em>Cégünk termékei a fenti jellemzők miatt nem tartalmazhatják a vírust</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/amikor-a-szoftver-gyartoja-irja-es-terjeszti-a-virust-win32induc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A külcsín is fontos egy ügyviteli rendszernél &#8211; MacOS skin és társai</title>
		<link>http://lab.symboltech.hu/2009/08/a-kulcsin-is-fontos-egy-ugyviteli-rendszernel-macos-skin-es-tarsai/</link>
		<comments>http://lab.symboltech.hu/2009/08/a-kulcsin-is-fontos-egy-ugyviteli-rendszernel-macos-skin-es-tarsai/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 09:12:41 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[bőr]]></category>
		<category><![CDATA[fekete]]></category>
		<category><![CDATA[kék]]></category>
		<category><![CDATA[macos]]></category>
		<category><![CDATA[skin]]></category>
		<category><![CDATA[ügyvitel]]></category>
		<category><![CDATA[új hullám]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=393</guid>
		<description><![CDATA[Nagy figyelmet fordítunk arra, hogy az általunk fejlesztett ügyviteli rendszer ne csak működésében, de kinézetében is munkára ösztönző legyen, kedvet kapjon az ember a napi feladatai elvégzéséhez. Egy irodai alkalmazás nem a szórakozást szolgálja, legyen az ablakoknak sarka! De mégis varázsolhasson egy kicsit a felhasználó!]]></description>
			<content:encoded><![CDATA[<p>Nagy figyelmet fordítunk arra, hogy az általunk fejlesztett ügyviteli rendszer ne csak működésében, de kinézetében is munkára ösztönző legyen, kedvet kapjon az ember a napi feladatai elvégzéséhez. Egy irodai alkalmazás nem a szórakozást szolgálja, legyen az ablakoknak sarka! De mégis varázsolhasson egy kicsit a felhasználó!</p>
<p>Évekkel ezelőtt nem értettük, hogy miért &#8220;éri meg&#8221; egy nem operációs rendszerbeli programmal elváltoztatni azt a kinézetet, amit nagy cégek verejtékes munkával összeraktak. <strong>De már tudjuk, hogy mindenki egy kicsit egyedit szeretne, kicsit szeretné a sajátjának érezni a számítógépet abban a 8 órában, amig előtte ül.</strong></p>
<p>Pár hónappal ezelőtt ezért határoztuk el, hogy minden rendszerünkben a felhasználó testreszabhatja a kinézetet. Kicserélheti a háttérképet, beillesztheti a háttérbe gyermekét, kutyáját vagy akár ellenségét&#8230;</p>
<p style="text-align: center;"><a href="http://www.symboltech.hu/ugyvitel/kepernyo/" target="_blank">További képernyőket nézhetünk meg ide kattintva!</a></p>
<p> </p>
<p>Ezen kívül pedig választhat számos előredefiniált kinézet közül. Lássuk, mit láthatunk!</p>
<p><strong>MacOS</strong></p>
<p> 
<a href="http://lab.symboltech.hu/wp-content/gallery/skins/macosskin.png" title="" class="shutterset_singlepic7" >
	<img class="ngg-singlepic" src="http://lab.symboltech.hu/wp-content/gallery/cache/7_web20_640x480_macosskin.png" alt="macosskin" title="macosskin" />
</a>
</p>
<p><strong>&#8220;Új hullám&#8221;</strong></p>

<a href="http://lab.symboltech.hu/wp-content/gallery/skins/newwaveskin_0.png" title="" class="shutterset_singlepic10" >
	<img class="ngg-singlepic" src="http://lab.symboltech.hu/wp-content/gallery/cache/10_web20_640x550_newwaveskin_0.png" alt="newwaveskin_0" title="newwaveskin_0" />
</a>

<p><strong>A Sötét iroda bűvöletében</strong></p>

<a href="http://lab.symboltech.hu/wp-content/gallery/skins/blackofficeskin.png" title="" class="shutterset_singlepic6" >
	<img class="ngg-singlepic" src="http://lab.symboltech.hu/wp-content/gallery/cache/6_web20_640x550_blackofficeskin.png" alt="blackofficeskin" title="blackofficeskin" />
</a>

<p><strong>Mi mindenből lehet választani&#8230;</strong></p>

<a href="http://lab.symboltech.hu/wp-content/gallery/skins/selectskin.png" title="" class="shutterset_singlepic9" >
	<img class="ngg-singlepic" src="http://lab.symboltech.hu/wp-content/gallery/cache/9_web20_640x550_selectskin.png" alt="selectskin" title="selectskin" />
</a>

<p><em>Nemsokára megjelenik Windows7 (seven) operációs rendszert idéző kinézetünk is&#8230;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/a-kulcsin-is-fontos-egy-ugyviteli-rendszernel-macos-skin-es-tarsai/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OpenOffice is ribbonra vált, Microsoft már a Ribbon 2.0-t készíti</title>
		<link>http://lab.symboltech.hu/2009/08/openoffice-is-ribbonra-valt-microsoft-mar-a-ribbon-2-0-t-kesziti/</link>
		<comments>http://lab.symboltech.hu/2009/08/openoffice-is-ribbonra-valt-microsoft-mar-a-ribbon-2-0-t-kesziti/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 10:57:31 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[openoffice]]></category>
		<category><![CDATA[ribbon]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=376</guid>
		<description><![CDATA[Nemrég jelent meg egy hír arról, hogy az OpenOffice-t fejlesztő Sun is egy olyan műveletgombokat tartalmazó eszköztárat készít, mint évekkel ezelőtt a Microsoft.]]></description>
			<content:encoded><![CDATA[<p>Nemrég jelent meg egy hír arról, hogy az OpenOffice-t fejlesztő Sun is egy olyan műveletgombokat tartalmazó eszköztárat készít, mint évekkel ezelőtt a Microsoft.</p>
<p><a href="http://blogs.sun.com/GullFOSS/entry/prototyping_a_new_ui_july">http://blogs.sun.com/GullFOSS/entry/prototyping_a_new_ui_july</a></p>
<p><img class="aligncenter size-medium wp-image-377" title="OpenOffice GUI" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/778px-Prototype-300x231.jpg" alt="OpenOffice GUI" width="300" height="231" /></p>
<p>Ez csak prototípus, nem végleges, ebben a formájában még nem felhasználóbarát. De emlékeztet az MS Office hasonló célú eszköztárára. Számos felhasználó már aggályát fejezte ki, hogy &#8220;ez egy gyilkos tulajdonság&#8221;. De ha a Sun is belemegy a GUI játékba, akkor nem lehet annyira rossz az elképzelés. Mivel a funkció csak 6-os JAVA verzióval érhető el, nem tudjuk, hogy mennyire lesz a Java keretrendszer része a ribbon. Ha a Java része lesz, akkor minden Microsoft alkalmazás felkötheti a gatyáját, hiszen robbanásszerűen fognak elterjedni az ilyen Java-s alkalmazások. Már ha a felhasználók nem aggályoskodnak tovább&#8230;</p>
<p>Közben a Microsoft az Office 2010 termékismertetőjében már a Ribbon továbbfejlesztéséről beszélt, néhány képpel szeretnénk is bemutatni, mire is gondoltak és milyen lesz a Ribbon v2.0.</p>
<p><img class="aligncenter size-medium wp-image-379" title="msribbon2" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/msribbon2-300x217.png" alt="msribbon2" width="300" height="217" /></p>
<p><img class="aligncenter size-medium wp-image-378" title="msribbon1" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/msribbon1-300x154.jpg" alt="msribbon1" width="300" height="154" /></p>
<p><em>Felhasználóink már értesülhettek róla, hogy cégünk is adoptálja a v2.0-ás ribbon funkciókat és termékeink ősszel megjelenő verzióiban követjük a trendet, amit elkezdtünk: </em><a href="http://www.symboltech.hu/features/szalag/"><em>http://www.symboltech.hu/features/szalag/</em></a><em> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/openoffice-is-ribbonra-valt-microsoft-mar-a-ribbon-2-0-t-kesziti/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web2, Twitter, kövess minket Te is!</title>
		<link>http://lab.symboltech.hu/2009/08/web2-twitter-kovess-minket-te-is/</link>
		<comments>http://lab.symboltech.hu/2009/08/web2-twitter-kovess-minket-te-is/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 08:08:57 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[web2]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=390</guid>
		<description><![CDATA[Kihasználva a Web 2.0 előnyeit, megjelentünk a Twitteren.]]></description>
			<content:encoded><![CDATA[<p>Kihasználva a Web 2.0 előnyeit, megjelentünk a Twitteren: <a href="http://twitter.com/symboltech" target="_blank">SymbolTech on Twitter</a></p>
<p>A LAB oldalon megjelenő információknál több, kevésbé szakmai hirdetményeket jelenítünk meg.</p>
<p><img title="twitter" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/mm_twitter-300x200.jpg" alt="twitter" width="300" height="200" /></p>
<p><strong>Kövess minket Te is itt: <a href="http://twitter.com/symboltech" target="_blank">SymbolTech on Twitter</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/web2-twitter-kovess-minket-te-is/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Még mindig nagyon gyenge a .NET Entity Framework 4.0 béta</title>
		<link>http://lab.symboltech.hu/2009/08/meg-mindig-nagyon-gyenge-a-net-entity-framework-4-0-beta/</link>
		<comments>http://lab.symboltech.hu/2009/08/meg-mindig-nagyon-gyenge-a-net-entity-framework-4-0-beta/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 06:45:52 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[adatbázis]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[entity]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=371</guid>
		<description><![CDATA[Találós kérdéssel indítok. Tehát mire gondoltam? ]]></description>
			<content:encoded><![CDATA[<p>Találós kérdéssel indítok. Tehát mire gondoltam?</p>
<p>Mindenki nagyon várja. Marketingre sokat költ a Microsoft. A fejlesztői portálok tele vannak vele, mert remek eszköz. Nem a megjelenítést szolgálja, azaz nem GUI. Mindenki használja. Mindenki meg van vele elégedve. Mindenki szidja. Mindenki mondja, hogy nem baj, a következő releaseben megoldják. Nagyon gyorsan, akár félévente jön ki belőle új release. Adatbázissal kapcsolatos. Adatbázist érünk el vele.</p>
<p> </p>
<p>Igen, kitalálhattátok, hogy <strong>EntityFramework</strong>. Témánál vagyunk.</p>
<p>Megjelent a 4.0 béta és az alábbi bejegyzést döbbenten olvastam. Itt kell tartani egy termék 4.0-s verziójával? Ezek a nagy előrelépések a 3.0-hoz képest? A cikk<a href="http://blogs.msdn.com/adonet/archive/2009/08/05/improvements-to-the-generated-sql-in-net-4-0-beta1.aspx" target="_blank"> itt olvasható</a>.</p>
<p>Nézzük megy egy kicsit jobban, mire is gondoltam, amikor a döbbenet szót használtam. Kollégáim már tudják mire gondolok, de tudja meg más is!</p>
<ul>
<li>Egy ilyen készültségi szinten lévő projektben kell olyan optimalizációs lépéseket megtenni, minthogy nem hoz le minden oszlopot egy subselect, csak ami kell nekünk?</li>
<li>COUNT(1) nyelvi elem direkt használata, amikor az a célszerű.</li>
<li>A legnagyobb, az IN SELECT. Komolyan gondolja valaki, hogy a 4.0-ig kell várni egy kliens oldalon is jelenlévő adatstruktúra (tömb) és SQL oldalon is elérhető nyelvi konstrukció (WHERE xx IN (x,y,z&#8230;)) összekapcsolására?</li>
</ul>
<p>Igen, emiatt van tele minden fejlesztői portál olyan jellegű kérdésekkel, hogy &#8220;Hogy tudok két táblát összekapcsolni LINQ-ban, EntityFramework-kel?&#8221; Ezek szerint nem segítség, hanem csak egy hozzászoktató eszköz, ami függőséget okoz és ha függő lettél, akkor minden fejlesztéshez a megrendelővel vetetni fogsz MsSQL Server 2010-et, supporttal, majd kell még 5 profi kolléga, aki natív SQL-hez nem ért, de kiválóan függő EntityFramework-kel.</p>
<p><em>A saját, fentihez hasonlító dolgokat megvalósító keretrendszserünk első bétája ennél sokkal több dolgot valósított meg. Mert a való életre próbáltuk alkalmazni és a tervezéskor használt use-case-ek a tapasztalatból táplálkoztak.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/meg-mindig-nagyon-gyenge-a-net-entity-framework-4-0-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerCommands &#8211; azaz ne hiányozzon semmi a VS2008-ból</title>
		<link>http://lab.symboltech.hu/2009/08/powercommands-azaz-ne-hianyozzon-semmi-a-vs2008-bol/</link>
		<comments>http://lab.symboltech.hu/2009/08/powercommands-azaz-ne-hianyozzon-semmi-a-vs2008-bol/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 11:34:48 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[forráskód]]></category>
		<category><![CDATA[projekt]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=363</guid>
		<description><![CDATA[Visual Studio 2008 remek eszköz. Számunkra egy dolog hiányzik belőle, mégpedig az, hogy a szépen, névterekben elhelyezett osztályok, ablakok, usercontrol-ok ugyanilyen szép mélységű könyvtárfát hoznak létre, amit ha egyszer kinyitottunk, sok kattintással tudjuk összecsukni.]]></description>
			<content:encoded><![CDATA[<p><strong>Visual Studio 2008 remek eszköz.</strong> Számunkra egy dolog hiányzik belőle, mégpedig az, hogy a szépen, névterekben elhelyezett osztályok, ablakok, usercontrol-ok ugyanilyen szép mélységű könyvtárfát hoznak létre, amit ha egyszer kinyitottunk, sok kattintással tudjuk összecsukni.</p>
<p>Ettől még jól használható, pláne, ha már a VS2005-höz is létezett VB-ben írt makró, ami becsukja a fát. Ennek volt kezdetleges változata, amely csak 1-1 szintet csukott be. És volt, ami már rekurzívan is működött. A tegnapi napig&#8230;</p>
<p> </p>
<p><img class="aligncenter size-medium wp-image-364" title="collapseproject" src="http://lab.symboltech.hu/wp-content/uploads/2009/08/collapseproject-289x300.jpg" alt="collapseproject" width="289" height="300" /></p>
<p style="text-align: left;">Egy VS2008 biztonsági frissítés feltelepítése óta nem működik. Lenne erőforrásunk debugolni, de csak-csak van más megoldás is, mondjuk egy ingyenes Microsoft tool!</p>
<p style="text-align: left; padding-left: 90px;"><em>A szoftverfejlesztő cégek mindegyike pénzért adja a termékeit. Bizonyos &#8220;kultúrákban&#8221; a termék ingyenes, a támogatás, ami által a tényleges előnyt szerzed, viszont fizetős, lásd Apache, Linux, MySql. Ebből kiindulva nem is keresgéltünk nagy tudású, de mégis ingyenes, &#8220;<strong>5 éve fejlesztjük, nagyon jó</strong>&#8221; termékek irányába, hiszen semmi nincs ingyen.</em></p>
<p>És találtunk egy tool-t, amely megfelel a céljainknak, hivatalos Microsoft termék, ingyenes, gyakorlatilag egy extension, amelyet minden bizonnyal a Microsoft is használ saját berkein belül. Talán a létrejötte is annak köszönhető, hogy valamelyik fejlesztő majdnem fellázadt a saját eszközük ellen.</p>
<p>Letölthető <a href="http://code.msdn.microsoft.com/PowerCommands" target="_self">erről az oldalról</a>.</p>
<p><strong>PowerCommands for Visual Studio 2008</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/08/powercommands-azaz-ne-hianyozzon-semmi-a-vs2008-bol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adatkötés .NET módra &#8211; nem eléggé rugalmas</title>
		<link>http://lab.symboltech.hu/2009/07/adatkotes-net-modra-nem-elegge-rugalmas/</link>
		<comments>http://lab.symboltech.hu/2009/07/adatkotes-net-modra-nem-elegge-rugalmas/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 10:05:42 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[currencymanager]]></category>
		<category><![CDATA[databinding]]></category>
		<category><![CDATA[gyűjtemény]]></category>
		<category><![CDATA[property]]></category>
		<category><![CDATA[propertymanager]]></category>
		<category><![CDATA[wpf]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=326</guid>
		<description><![CDATA[Azt nem kell senkinek ecsetelnem, hogy a .NET-et adatkötés, a DataBinding mennyire nagy szolgálatot tesz, mennyire megkönnyíti az objektumok és felhasználói felületek összekötését, a kapcsolat tipusos kezelését. De mégis belefutottunk tegnap egy hiányosságba és 4 munkaórányi problémamegoldás után el kellett vetnünk tervünket, más megoldást kellett keresni.]]></description>
			<content:encoded><![CDATA[<p>Azt nem kell senkinek ecsetelnem, hogy a .NET-et adatkötés, a DataBinding mennyire nagy szolgálatot tesz, mennyire megkönnyíti az objektumok és felhasználói felületek összekötését, a kapcsolat tipusos kezelését. De mégis belefutottunk tegnap egy hiányosságba és 4 munkaórányi problémamegoldás után el kellett vetnünk tervünket, más megoldást kellett keresni.</p>
<p>Az adatkötésben van egy kis automatizmus, mégpedig az, hogy a rendszer egy vezérlőhöz (UI elem) történő adatkötés során megpróbálja kitalálni, hogy melyik adatkötési mechanizmust akarjuk használni. Egészen pontosan, ha egy <code>TextEdit</code>-hez szeretnénk egy property-t kötni, akkor két dolog történhet.</p>
<ol>
<li><strong>Amennyiben a forrás objektum egy &#8220;sima&#8221; objektum</strong>, úgy az adatkötés a megnevezett (stringként átadott) property-hez megtörténik. Ha jól paramétereztük fel az adatkötést, akkor a beviteli mező változása a property-ben rögtön megjelenik és vica-versa.</li>
<li><strong>Ha a forrás objektum valamilyen gyűjtemény</strong> (<code>IList, IBindingList, Array</code>), akkor a megnevezett property, amihez kötni szeretnénk a gyűjtemény elemeiben kell, hogy létezzen. És az adatkötés is ide történik. List&lt;Customer&gt;-hez való adatkötésnél például a &#8220;<code>Name</code>&#8221; propertynek a <code>Customer </code>osztályban kell léteznie. Ilyenkor (gyűjtemény esetén) a gyűjtemény elemét vizsgálja a databinding és ott keresi a property-t.</li>
</ol>
<p>Ez utóbbi teljesen kézenfekvő, hiszen ha egy listát akarunk valahova kötni, akkor a lista egy oszlopát akarjuk valahova kötni. Első esetben egy <code>PropertyManager </code>jön létre, utóbbi esetben pedig egy <code>CurrencyManager</code>. Mindkettőn értelmezett a lépkedés, de az elsőn nincs nagyon értelme.</p>
<p><img class="aligncenter size-full wp-image-329" title="binding" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/simple_binding.jpg" alt="binding" width="262" height="250" /></p>
<p><strong>A mi problémánk viszont a következő.</strong> Nem tudjuk befolyásolni, nem tudjuk elérni, hogy egy gyűjtemény típusú forrás objektum adott property-jéhez kössünk vezérlőt. Egy listának is van <code>Count</code>-ja. Ehhez nem tudtunk hozzákötni mondjuk egy Label-t, mert az adatkötés problémaként adta vissza nekünk, hogy a <code>Customer </code>objektumnak nincs <code>Count</code>-ja. De nem is oda akartunk kötni!!!</p>
<p>A probléma megoldása abban rejlik, hogy a property nevét nem szabad kitölteni. Ez már amolyan vicces dolog, hogy egy &#8220;változó&#8221; megadok a rá való hivatkozással, majd/és opcionálisan még stringként is hozzáírhatom a metódushoz a &#8220;változó&#8221; nevét.</p>
<p><span style="color: #339966;"><strong>Jó megoldás: <code>label.DataBindigs.Add("Text", list.Count, "")</code></strong></span><br />
<span style="color: #ff0000;"><em>Nem jó megoldás: <code>label.DataBindigs.Add("Text", list, "Count")</code></em></span></p>
<p>Hmm, állítólag WPF-ben az adatkötés jobb. Nemsokára úgyis indul egy WPF-es koncepció-projektünk, majd kiderül&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/adatkotes-net-modra-nem-elegge-rugalmas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RTF normalizálás &#8211; vissza-visszatérő fájlformátumok</title>
		<link>http://lab.symboltech.hu/2009/07/rtf-normalizalas-vissza-visszatero-fajlformatumok/</link>
		<comments>http://lab.symboltech.hu/2009/07/rtf-normalizalas-vissza-visszatero-fajlformatumok/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 07:14:44 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[maszk]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[rtf]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=313</guid>
		<description><![CDATA[Régen elfeledett formátumok térnek vissza néha-néha. Mekkora találmány volt régen (állítólag 1987-ben) az RTF formátum. Elfeledtük azóta, mindenhol a HTML, XHTML, XML a divat. Most újra elővettük egy projektünk erejéig és bele is futottunk egy feladatba. De pont ezért dolgozunk itt, kihívásokra várunk.]]></description>
			<content:encoded><![CDATA[<p>Régen elfeledett formátumok térnek vissza néha-néha. Mekkora találmány volt régen (állítólag 1987-ben) az RTF formátum. Elfeledtük azóta, mindenhol a HTML, XHTML, XML a divat. Most újra elővettük egy projektünk erejéig és bele is futottunk egy feladatba. De pont ezért dolgozunk itt, kihívásokra várunk.</p>
<p>Ügyfelünk dokumentumokat szeretne készíteni úgy, hogy azokat dolgozóadatokkal tölti fel. Ne kelljen az újonnan belépő dolgozónak word-ben megszerkeszteni a belépőkártya igénylő lapját, a munkaidőnyilvántartó lapját. És még sorolhatnánk&#8230;</p>
<p>Office dokumentumok kicsit nehézkesen kezelhetőek, célunk volt, hogy az adatok behelyettesítése után a lapok elküdhetőek legyenek a nyomtatón kívül PDF-be, vágólapra, stb. Ezért jött az ötlet, legyen RTF. Van jól használható RTF editorunk, abban a felhasználó a dokumentumait elkészíti, adatbázisban tárolhatja. Persze elhelyez benne helyettesítő maszkokat: #NEV#, #SZULDATUM#. (Ezek formátuma a régi rendszerről való átállás miatt kötött volt).</p>
<p><img class="aligncenter size-medium wp-image-324" title="document" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/document-300x174.jpg" alt="document" width="300" height="174" /></p>
<p>A projekt ezen része elkészült, az adatok a megfelelő algoritmus szerint cserélődtek, a #NEV# helyére bekerült a dolgozó neve és így tovább. A tesztek során kiderült, hogy átlagos felhasználás (nem programozói, azaz laboratóriumi környezetben) a maszkok kicserélése nem is megy olyan szépen, mint azt hittük. Kiderült a turpisság: Ahogy a felhasználó szerkeszti a szöveget és néha-néha visszatöröl, újra beleír, az RTF szerkesztő új szekciót nyit neki az RTF forrásban. A megjelenítést ez nem befolyásolja, de a cserénél előfordul, hogy a szöveget nem tudjuk cserélni, mert a #NEV# maszk 3 részre bomlott és <strong>#N</strong>, <strong>EV</strong> és <strong>#</strong> lett belőle. String.Replace() pedig csak nevetett rajtunk.</p>
<p>Normalizálnunk kellett az RTF-et. Egy teljes RTF értelmezőt (szétbontó, építő) írni nem lett vona kivitelezhető, tekintve a projekt ezen moduljának költségvetését. Azonban egy minimális korrekciós algoritmus belefért, amely az egymás után következő, egyformán formázott elemeket összevonja eggyé:</p>
<p><code>{\f1\cf0 <strong><span style="text-decoration: underline;">Ar</span></strong>}{\f1\cf0 <span style="text-decoration: underline;"><strong>ra</strong> <strong>szeretnék</strong></span>}{\f1\cf0 <strong><span style="text-decoration: underline;">rámuta</span></strong>}{\f1\cf0 <strong><span style="text-decoration: underline;">tni</span></strong>}</code></p>
<p>Tervezésünket siker koronázta, végre megmozgattuk SQL parancsokban ellaposodott, algoritmikus &#8220;agyféltekénket&#8221; is.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/rtf-normalizalas-vissza-visszatero-fajlformatumok/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Office 2010 &#8211; felkészülés</title>
		<link>http://lab.symboltech.hu/2009/07/office-2010-felkeszules/</link>
		<comments>http://lab.symboltech.hu/2009/07/office-2010-felkeszules/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 16:37:11 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[office]]></category>
		<category><![CDATA[sharepoint]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=308</guid>
		<description><![CDATA[Cégünk megkezdte az Office 2010 rendszerrel való együttműködésre való felkészülést.]]></description>
			<content:encoded><![CDATA[<p>Cégünk megkezdte az Office 2010 rendszerrel való együttműködésre való felkészülést.</p>
<p>Sok energiát fektetünk abba, hogy minél jobban kiismerjük a rendszer újdonságait és ezeket a jövőben ki is tudjuk használni. Rendszereink kompatibilisek maradnak a korábbi Office verziókkal is, de terveink szerint számos új lehetőséget fogunk felhasználni következő programverzióinkban.</p>
<p><img class="aligncenter size-medium wp-image-309" title="office2010" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/office2010-300x198.png" alt="office2010" width="300" height="198" /></p>
<p>Egy nagyon jó marketing film (úgynevezett trailer) érhető el <a href="http://www.office2010themovie.com/" target="_blank">itt</a>.</p>
<p>Felhasználói szintű információkat tett közzé a Microsoft az <a href="http://www.microsoft.com/office/2010/" target="_blank">alábbi oldalon</a>.</p>
<p>Sharepoint 2010 sokkal szakmaibb szemmel (úgynevezett sneak videón) az <a href="http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx" target="_blank">alábbi linken</a>.</p>
<p>Igazán nagy kihívás lesz számunkra, hogy ezeket az eszközöket a hazai környezetbe illesszük, tekintettel az itthoni cégek finanszírozási kérdéseire és nem utolsó sorban az újdonságtól való &#8220;félelem&#8221; leküzdésére.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/office-2010-felkeszules/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Administrator &#8211; a kifejezés eredete</title>
		<link>http://lab.symboltech.hu/2009/07/administrator-a-kifejezes-eredete/</link>
		<comments>http://lab.symboltech.hu/2009/07/administrator-a-kifejezes-eredete/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 06:39:13 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[latin]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=303</guid>
		<description><![CDATA[A számítástechnikában mindenki ismeri az administrator szót, sőt a sima felhasználó is biztosan találkozott már vele, mert pár kivételtől eltekintve minden számítógépes program, amely felhasználókat kezel alapértelmezetten az ADMIN felhasználót létrehozza. Kivételként említhetjük az Oracle-nél alkalmazott Scott, James, Adams, stb. felhasználókat, illetve az MsSql SA-ját, ami kifejtve szintén tartalmazza az Admin szót (SysAdmin). De honnan maga a kifejezés?]]></description>
			<content:encoded><![CDATA[<p>A számítástechnikában mindenki ismeri az administrator szót, sőt a sima felhasználó is biztosan találkozott már vele, mert pár kivételtől eltekintve minden számítógépes program, amely felhasználókat kezel alapértelmezetten az ADMIN felhasználót létrehozza. Kivételként említhetjük az Oracle-nél alkalmazott Scott, James, Adams, stb. felhasználókat, illetve az MsSql SA-ját, ami kifejtve szintén tartalmazza az Admin szót (SysAdmin). De honnan maga a kifejezés?</p>
<p>Annyira régi, annyira elterjedt, hogy bele sem gondolunk, azt valószínűsíthetnénk, hogy Kolombusz ültette el az első Admin fát az újvilágban vagy az amerikai kontinens Kazinczy-ja lehetett az első, aki ezt a kifejezést alkalmazta.</p>
<p>Csapatunkat mégsem hagyta nyugodni a dolog. Szóösszetételekben gondolkodtunk és beugrott egy kifejezés összetétel: <strong>Ad</strong>-<strong>Ministrator</strong>. A <strong>ministrator</strong> a miniszter szóra hasonlít, a latin minister-ből eredhet, ami szolgát jelent. Ennek politikai, közigazgatási jelentősségét most ne firtassuk! Az <strong>Ad</strong> pedig nyilvánvalóan hirdetést jelent, újkori rövidítése a szintén újkori <strong>advertisement</strong> szónak. (Ennek latin forrása nincs, régi korokban nem volt hirdetés).</p>
<p><img class="size-medium wp-image-306 alignnone" title="symboltechcard800" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/symboltechcard800-300x232.jpg" alt="symboltechcard800" width="300" height="232" /></p>
<p>Talán ráhibáztunk a kialakulás módjára is. A web-es, elektronikus hirdetések szolgáját, aki kezelte, adminisztrálta (önmagával magyarázzuk a dolgot?) a hirdetéseket hívhatták AdMinistratornak. Az, hogy a számítógéphez jól értő emberek a hirdetések mellett más dolgokat is kezeltek, nyilvánvaló következménye az eseményeknek.</p>
<p>A nálunk dolgozó <strong>Ad Miniszterek</strong> (adatbázis, IIS, Small Business) kérjük ne érezzék rosszul magukat a szolga szó olvasása közben, csapatunk nagyrabecsült tagjai ők, a szó régi jelentését már elfelejtettük.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/administrator-a-kifejezes-eredete/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>HashList &#8211; Dictionary többszörös kulccsal</title>
		<link>http://lab.symboltech.hu/2009/07/hashlist-dictionary-tobbszoros-kulccsal/</link>
		<comments>http://lab.symboltech.hu/2009/07/hashlist-dictionary-tobbszoros-kulccsal/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 14:39:09 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Hírek]]></category>
		<category><![CDATA[dictionary]]></category>
		<category><![CDATA[fejlesztés]]></category>
		<category><![CDATA[generikus]]></category>
		<category><![CDATA[ngenerics]]></category>
		<category><![CDATA[típus]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=300</guid>
		<description><![CDATA[A pascal-os időszámításhoz képest a modern framework-ökben számos segédeszköz rendelkezésre áll, sok adattároló szerkezetet használhatunk, sőt a nagy ugrás, a generikus adattípusokra az ember úgy gondol, mint a netovábbra, a végtelenre. De volt, amit nem találtunk meg...]]></description>
			<content:encoded><![CDATA[<p>A pascal-os időszámításhoz képest a modern framework-ökben számos segédeszköz rendelkezésre áll, sok adattároló szerkezetet használhatunk, sőt a nagy ugrás, a generikus adattípusokra az ember úgy gondol, mint a netovábbra, a végtelenre. De volt, amit nem találtunk meg&#8230;</p>
<p>KeyValue párokat szerettünk volna tárolni, Key szerint keresni, Value-kat kinyerni. Jött az ötlet Dictionary&lt;Key, Value&gt;. Specifikáció szerint viszont ennek egy Key-je egyszer szerepelhet a gyűjteményben, minden további értékeadás felülírja az előzőt. Azaz a Key-eknek egyedinek kell lenniük. Pár éve már sejtettük ezt.</p>
<p>Nekünk viszont irányítószámokat kell tárolnunk és hála a magyar közigazgatásnak nem minden település kap saját számot, előfordul, hogy egynél több település fut ugyanolyan &#8220;kód&#8221; (irányítószám) alatt. Az ötlet, mely szerint Dictionary&lt;int, List&lt;string&gt;&gt; adatszerkezetbe rakjuk az információkat, jónak tűnt, de hátha ezt már valaki kidolgozta.</p>
<p>És ekkor találtuk meg többedszerre az <a href="http://www.codeplex.com/NGenerics">NGenerics</a> családot, amely számos, C#-ból kimaradt, bonyolultságuk és sokrétűségük miatt speciális tudást igénylő generikus típussal engedi bővíteni a készletet. Ennek HashList osztályát használtuk, amely az alábbi nyelvi konstrukcióban engedte feltölteni ZIP (IRSZ) törzsünket.</p>
<p> </p>
<pre>citylist.Add(2066, "Szár");
citylist.Add(2066, "Újbarok");</pre>
<p> </p>
<p>Az osztálygyűjtemény nagyon nagy. Szerettük volna kerülni az irányítószám kezelés miatt akár 30-40 másodperccel is megnövekedett fordítási időt. Ezért csak bizonyos részeket használtunk fel belőle. Matematikusok tervezték, tele van interfésszel, látogató termintával és minden szépséggel, emiatt az általunk használt osztályhoz a következő fájlok mindegyikére szükség volt:</p>
<p> </p>
<pre>HashList.cs
IVisitable.cs
IVisitableCollection.cs
IVisitableDictionary.cs
IVisitor.cs
VisitableHashtable.cs</pre>
<p> </p>
<p>Projektünk sikeresen kiadásra került, a projektben résztvevő személyek mindegyike sikeresnek értékelte a megoldást. Köszönjük NGenerics!</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/hashlist-dictionary-tobbszoros-kulccsal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ha várni kell a Windowsban &#8211; A jó öreg homokóra</title>
		<link>http://lab.symboltech.hu/2009/07/ha-varni-kell-a-windowsban-a-jo-oreg-homokora/</link>
		<comments>http://lab.symboltech.hu/2009/07/ha-varni-kell-a-windowsban-a-jo-oreg-homokora/#comments</comments>
		<pubDate>Sun, 12 Jul 2009 08:13:56 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[cursor]]></category>
		<category><![CDATA[forráskód]]></category>
		<category><![CDATA[homokóra]]></category>
		<category><![CDATA[hourglass]]></category>
		<category><![CDATA[idisposable]]></category>
		<category><![CDATA[várakozás]]></category>
		<category><![CDATA[waitcursor]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=293</guid>
		<description><![CDATA[Gyakran fordul elő, hogy homokórát kell megjelenítenünk, mert valamilyen művelet hosszabb időt vehet igénybe. A felhasználó pedig várakozzon, ahelyett, hogy a beviteli mezőket próbálja szerkeszteni vagy a gombokat működésre bírni.]]></description>
			<content:encoded><![CDATA[<p>Gyakran fordul elő, hogy homokórát kell megjelenítenünk, mert valamilyen művelet hosszabb időt vehet igénybe. A felhasználó pedig várakozzon, ahelyett, hogy a beviteli mezőket próbálja szerkeszteni vagy a gombokat működésre bírni.</p>
<p>Régebbi programozási nyelvekben (Delphi, FoxPro) a hosszú műveletek automatikusan beállították a homokóra üzemmódot. Viszont nem kezelték jól a beágyazott műveleteket, azaz 10 darab SELECT végrehajtása egymás után 10 homokórás villogást eredményezett. Ez a mai világban inkább szégyenletes, mint felhasználóbarát.</p>
<p> </p>
<p>Ezt a problémát oldottuk meg az alábbi kódrészlettel:</p>
<pre>using System;
using System.Windows.Forms;</pre>
<pre>namespace SymbolTech.Common
{
    public class WaitCursor : IDisposable
    {
        private static int waitcursorlevel = 0;

        public WaitCursor()
        {
            waitcursorlevel++;
            if (waitcursorlevel &gt; 0)
                Cursor.Current = Cursors.WaitCursor;
        }

        public void Dispose()
        {
            waitcursorlevel--;
            if (waitcursorlevel == 0)
                Cursor.Current = Cursors.Default;
        }
    }
}</pre>
<p>Minden (hosszabb) műveletet beágyazunk egy <code>using(new WaitCursor()) </code>blokkba. Ezzel a következő előnyöket érjük el:</p>
<ol>
<li>A műveletek minden esetben &#8220;homokórázni&#8221; fognak.</li>
<li>A beágyazott műveletek (külső blokk már homokórában dolgozik, a belső, mondjuk 100 iteráció is bekapcsolja a homkórát) nem fogják villogtatni a kurzort.</li>
<li>Véletlenül sem felejtjük el visszakapcsolni az alapértelmezett kurzort, amennyiben a műveletek végrehajtásra kerültek.</li>
</ol>
<p> </p>
<p>Lássunk egy példát, a használatára:</p>
<pre>        private void DummyMethod()
        {
            using (new WaitCursor())
            {
                Thread.Sleep(100);
            }
        }</pre>
<pre>        private void button1_Click(object sender, EventArgs e)
        {
            using (new WaitCursor())
            {
                Thread.Sleep(500);
                for (int i = 0; i &lt; 10; i++)
                    DummyMethod();
            }
        }</pre>
<p>A példában egy beágyazott, többször (10x) végrehajtott műveletet látunk, amelyek összességében 1.5mp-re átkapcsolnak homokórára, de közben nem villog a kurzor.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/ha-varni-kell-a-windowsban-a-jo-oreg-homokora/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>TabCsapda &#8211; hol a kurzor?</title>
		<link>http://lab.symboltech.hu/2009/07/tabcsapda-hol-a-kurzor/</link>
		<comments>http://lab.symboltech.hu/2009/07/tabcsapda-hol-a-kurzor/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 18:35:55 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[szoftverkiadás]]></category>
		<category><![CDATA[taborder]]></category>
		<category><![CDATA[tesztelés]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=291</guid>
		<description><![CDATA[Tesztelő csapatunk fura hibával állt elő, nemsokára megjelenő program release-ünk áttekintésekor. A TAB-bal való navigáció - amely a Win95 környékén jelenhetett meg és minden felhasználó hozzászokott az elmúlt 15 évben - valahol elveszti működését és megáll.]]></description>
			<content:encoded><![CDATA[<p>Tesztelő csapatunk fura hibával állt elő, nemsokára megjelenő program release-ünk áttekintésekor. A TAB-bal való navigáció &#8211; amely a Win95 környékén jelenhetett meg és minden felhasználó hozzászokott az elmúlt 15 évben &#8211; valahol elveszti működését és megáll.</p>
<p>A GridControl volt a hibás, ugyanis furcsa működéséből adódóan egy táblázatban is lehet tabbal lépkedni, vagy a sorok vagy a cellák között és amikor a végére érünk, nem tudunk merre menni. Nem is tudom, hogy miért ez az alapértelmezett működés, de kikapcsoltuk. Sok dolgunk nem volt, 2 (!!!) sort kellett a megfelelő helyen adaptálni és az összes termékünk következő kiadásában megjelenik a TabCsapda elleni megoldás.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/tabcsapda-hol-a-kurzor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kivételek típusai &#8211; melyiket dobjam?</title>
		<link>http://lab.symboltech.hu/2009/07/kivetelek-tipusai-melyiket-dobjam/</link>
		<comments>http://lab.symboltech.hu/2009/07/kivetelek-tipusai-melyiket-dobjam/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 09:49:55 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[exception]]></category>
		<category><![CDATA[fejlesztés]]></category>
		<category><![CDATA[forráskód]]></category>
		<category><![CDATA[kivétel]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=275</guid>
		<description><![CDATA[A kivételkezelés alatt sok fejlesztő a catch ág megvalósítását gondolja, de ugyanolyan fontos a kivételek eldobása is. Nem szabad azzal megelégedni, hogy dobunk egy ApplicationException-t, sokkal precízebb, ha a típusos esetekben (rossz paraméter, nem jó képformátum) a beépített kivételosztályokat használjuk.]]></description>
			<content:encoded><![CDATA[<p>A kivételkezelés alatt sok fejlesztő a catch ág megvalósítását gondolja, de ugyanolyan fontos a kivételek eldobása is. Nem szabad azzal megelégedni, hogy dobunk egy ApplicationException-t, sokkal precízebb, ha a típusos esetekben (rossz paraméter, nem jó képformátum) a beépített kivételosztályokat használjuk.</p>
<p>Lássuk, mik ezek:</p>
<table border="0" width="100%" bgcolor="#ffffff" bordercolor="#c0c0c0">
<tbody>
<tr bgcolor="#f0f0f0">
<td width="319"><strong>Kivétel osztály</strong></td>
<td width="528"><strong>Kiváltás oka</strong></td>
</tr>
<tr>
<td width="319"><strong>SystemException </strong></td>
<td width="528">Futásidejű hiba, a kivételes ősosztálya</td>
</tr>
<tr>
<td width="319"><strong>AccessException </strong></td>
<td width="528">Egy típus elemeléréseinek hibája (metódus, mező, property)</td>
</tr>
<tr>
<td width="319"><strong>ArgumentException </strong></td>
<td width="528">Metódushívás esetén hibás paraméter</td>
</tr>
<tr>
<td width="319"><strong>ArgumentNullException </strong></td>
<td width="528">Metódushívás esetén null paraméter, ha azt a metódus nem tudja kezelni</td>
</tr>
<tr>
<td width="319"><strong>ArgumentOutOfRangeException </strong></td>
<td width="528">Paraméter értéke adott határokon kívül esik</td>
</tr>
<tr>
<td width="319"><strong>ArithmeticException </strong></td>
<td width="528">&#8220;Matematikai&#8221; hiba</td>
</tr>
<tr>
<td width="319"><strong>ArrayTypeMismatchException </strong></td>
<td width="528">Típusos tömbön végzett művelet egy idegen típussal</td>
</tr>
<tr>
<td width="319"><strong>BadImageFormatException </strong></td>
<td width="528">Rossz képformátum</td>
</tr>
<tr>
<td width="319"><strong>CoreException </strong></td>
<td width="528">Futásidejű kivételes ősosztálya</td>
</tr>
<tr>
<td width="319"><strong>DivideByZeroException</strong></td>
<td width="528">Nullával való osztás</td>
</tr>
<tr>
<td width="319"><strong>FormatException </strong></td>
<td width="528">Argumentum formátuma nem helyes (pl: String.Format)</td>
</tr>
<tr>
<td width="319"><strong>IndexOutOfRangeException</strong></td>
<td width="528">Tömb indexelése túlmutat a határokon</td>
</tr>
<tr>
<td width="319"><strong>InvalidCastExpression </strong></td>
<td width="528">Futásidejű Cast művelet nem hajtható végre</td>
</tr>
<tr>
<td width="319"><strong>InvalidOperationException </strong></td>
<td width="528">Nem megfelelő (idejű?) művelet hívása</td>
</tr>
<tr>
<td width="319"><strong>MissingMemberException </strong></td>
<td width="528">DLL verziószám ütközés, eltérés metódushívás közben</td>
</tr>
<tr>
<td width="319"><strong>NotFiniteNumberException </strong></td>
<td width="528">Nem valós szám (decimal, float; NaN, Infinity)</td>
</tr>
<tr>
<td width="319"><strong>NotSupportedException </strong></td>
<td width="528">Nem létező metódus hívása (reflection?)</td>
</tr>
<tr>
<td width="319"><strong>NullReferenceException </strong></td>
<td width="528">NULL értékű változó által hivatkozott objektum elérése</td>
</tr>
<tr>
<td width="319"><strong>OutOfMemoryException </strong></td>
<td width="528">Memória elfogyás</td>
</tr>
<tr>
<td width="319"><strong>StackOverflowException </strong></td>
<td width="528">Verem műveletek memória elfogyása (rekurízió)</td>
</tr>
</tbody>
</table>
<p>A fenti lista számos lehetőséget kínál a fejlesztőknek a megfelelő kivétel eldobásában. Ezek használata nagyban megkönnyíti a hibakezelést és hibakeresést, a metódus írója pedig publikálhatja, hogy mit várt és mit kapott.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/kivetelek-tipusai-melyiket-dobjam/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Egyedi sorosítás &#8211; IXMLSerializable megvalósítás</title>
		<link>http://lab.symboltech.hu/2009/07/egyedi-sorositas-ixmlserializable-megvalositas/</link>
		<comments>http://lab.symboltech.hu/2009/07/egyedi-sorositas-ixmlserializable-megvalositas/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 09:30:14 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[dictionary]]></category>
		<category><![CDATA[forráskód]]></category>
		<category><![CDATA[ixmlserializable]]></category>
		<category><![CDATA[projekt]]></category>
		<category><![CDATA[sorosítás]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=268</guid>
		<description><![CDATA[C#, remek nyelv. Szinte mindent lehet sorosítani, XML-be menteni. Nem is kell kézzel ezeket megírni, összerakni. De egy pár dolog kimaradt. Talán oka is van, hogy miért, de ez nem lényeg. A lényeg, hogy meg lehet valósítani.]]></description>
			<content:encoded><![CDATA[<p><strong>C#, remek nyelv.</strong> Szinte mindent lehet sorosítani, XML-be menteni. Nem is kell kézzel ezeket megírni, összerakni. De egy pár dolog kimaradt. Talán oka is van, hogy miért, de ez nem lényeg. A lényeg, hogy meg lehet valósítani.</p>
<p>A generic List&lt;&gt;-et lehet sorosítani, de előtte kell egy plusz származtatási szinten készíteni. Dictionary&lt;T,U&gt;-t nem lehet. De van megoldás. Csináljunk egy sorosítható Dictionary-t.</p>
<pre>    [XmlRoot("Dictionary")]
    public class SerializableDictionary&lt;TKey, TValue&gt; : IXmlSerializable
    {
        public XmlSchema GetSchema()
        {
            return null;
        }</pre>
<pre>        public void ReadXml(XmlReader reader)
        {
            XmlSerializer keySerializer = new XmlSerializer(typeof(TKey));
            XmlSerializer valueSerializer = new XmlSerializer(typeof(TValue));</pre>
<pre>            bool wasEmpty = reader.IsEmptyElement;</pre>
<pre>            reader.Read();</pre>
<pre>            if (wasEmpty)
                return;</pre>
<pre>            while (reader.NodeType != XmlNodeType.EndElement)
                try
                {
                    reader.ReadStartElement("Item");
                    reader.ReadStartElement("Key");
                    TKey key = (TKey)keySerializer.Deserialize(reader);
                    reader.ReadEndElement();</pre>
<pre>                    reader.ReadStartElement("Value");
                    TValue value = (TValue)valueSerializer.Deserialize(reader);
                    reader.ReadEndElement();</pre>
<pre>                    reader.ReadEndElement();</pre>
<pre>                    reader.MoveToContent();</pre>
<pre>                    this.Add(key, value);
                }
                catch { }
            reader.ReadEndElement();
        }</pre>
<pre>        public void WriteXml(XmlWriter writer)
        {
            XmlSerializer keySerializer = new XmlSerializer(typeof(TKey));
            XmlSerializer valueSerializer = new XmlSerializer(typeof(TValue));</pre>
<pre>            foreach (TKey key in this.Keys)
            {
                writer.WriteStartElement("Item");
                writer.WriteStartElement("Key");
                keySerializer.Serialize(writer, key);
                writer.WriteEndElement();</pre>
<pre>                writer.WriteStartElement("Value");
                TValue value = this[key];
                valueSerializer.Serialize(writer, value);
                writer.WriteEndElement();</pre>
<pre>                writer.WriteEndElement();
            }
        }
    }</pre>
<p>Ahogy látható, csak a saját szintünket kell megvalósítani, a TKey és TValue elemek sorosításával már a saját osztályuk foglalkozik. Extrém eset ha a TValue is egy sorosítható Dictionary (valós példát nem tudunk jelenleg mondani), ilyenkor ennek az objektumnak a sorosításakor szintén a fenti algoritmus fog lefutni.</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/egyedi-sorositas-ixmlserializable-megvalositas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Diagram engine &#8211; miért C#</title>
		<link>http://lab.symboltech.hu/2009/07/diagram-engine-miert-c/</link>
		<comments>http://lab.symboltech.hu/2009/07/diagram-engine-miert-c/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 05:50:38 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Hírek]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[customcontrol]]></category>
		<category><![CDATA[diagram]]></category>
		<category><![CDATA[fejlesztés]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[paint]]></category>
		<category><![CDATA[szoftver]]></category>
		<category><![CDATA[zorder]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=151</guid>
		<description><![CDATA[Ügyviteli rendszereknél ritka, hogy diagramot jelenítünk meg valamit, hiszen minden adat táblákban van, azok megjelenítéséhez pedig ideális valamiféle grid.]]></description>
			<content:encoded><![CDATA[<p>Ügyviteli rendszereknél ritka, hogy diagramot jelenítünk meg valamit, hiszen minden adat táblákban van, azok megjelenítéséhez pedig ideális valamiféle grid. Néha szoktak beépített grafikon segítségével felhasználókat elképráztatni, de az egyedi rajzolásos digram nem mindennapos.</p>
<p>Az üzletkötőink, ügyviteli szakembereink sem értették, hogy mit akarunk ezzel, miért nem jó szerintünk a sima kis lista. Csak a végén értették meg, hogy mit is akartunk.</p>
<p><strong>Ezt:</strong></p>
<p><img class="aligncenter size-full wp-image-252" title="voucherdiagram" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/voucherdiagram.jpg" alt="voucherdiagram" width="700" height="495" /></p>
<p>Hogyan is jött létre ez a &#8211; <em>joggal innovációnak nevezhető</em> &#8211; modul, amely minden ügyviteli termékünkben megjelenik és sok pozitív felhasználói visszajelzést indukált? A bizonylatok és egyéb adatelemek közti reláció, adatkapcsolat adott, erre épül maga az alkalmazás. No de ezt hogy jelenítsük meg egy gráfban, hogy  felhasználó is kedvet kapjon és használja?</p>
<p>Csapatunk 3 napon keresztül tervezett, brainstormingolt. Számos ötlet jelent meg a fejekben és a nagy prezentációs falon, ezen ötletek kb. 50% bele is került a megvalósult rendszerbe. Az elvárások tisztázása után kezdődött a fejlesztés. Programnyelv C#, ennek GDI és GDI+ lehetőségei kiváló kiaknázásra való területet jelentettek számunkra.</p>
<p><strong>Lépések:</strong></p>
<ul>
<li>Építsünk egy saját controlt.</li>
<li>Bármilyen megjelenni kívánó objektum feleljen megy egy <code>IDiagramDrawItem </code>interfésznek, amely egy metódust definiál <code>void Draw()</code> és információt szolgáltat arról, hogy melyik rétegben jelenik meg a kirajzolandó adatelem <code>int ZOrder { get; }</code>.</li>
<li>Rajzolás megvalósítása
<ul>
<li><code>override Paint()</code></li>
<li><code>void ClearAndDrawBackground()</code></li>
<li><code>void SortByZOrder()</code></li>
<li><code>foreach(... item.Draw()...)</code></li>
</ul>
</li>
</ul>
<p>Már a tervezési fázisban is láthatóvá vált, hogy lesznek optimalizálási kérdések, problémák, amelyek a témakör izgalmasabb részét jelentik.</p>
<p><strong>Repository, hogy ne szaggasson a kép.</strong> Egyedileg rajzoló eljárások rákfenéje a sok GDI objektum, amely memóriában és időben is költséges. A memóriabeli költségeket, mivel IDisposasble, meg lehet oldani, de sokáig tart minden OnPaintben Font-os, Pen-t és Brush-t létrehozni. Erre született megoldásként, hogy a diagram ezeket publikálja, tárolja, elérhetővé teszi eg példányban, egy alkalommal való létrehozással a rajzolni képes objektumok felé. Performancia mérést végeztünk, egy átlagos diagram 740 alkalommal tud kirajzolódni egy másodperc alatt. Nem rossz, megfelel.</p>
<p><strong>GraphicsPath, hogy lekerekített sarkú legyen a doboz.</strong> A C# GDI+ lehetőséget kínál arra, hogy vonalak és görbék segítségével egy &#8220;utat&#8221; hozzunk létre, amely felhasználható rajzolásra és kitöltésre egyaránt. Megvalósítottuk. Mivel ez is költséges, minden objektum a mérete alapján (amely nem állítható megjelenítés közben) első felhasználáskor (late-init) létrehozza a GraphicsPath objektumot.</p>
<p><strong>LinearGradientBrush, hogy átmenetes legyen a dobozok háttere.</strong> A legnagyobb kihívás a színátmenetes doboz volt, amely egy pontoktól függő GradientBrush lett. Ennek szintén elég egy példányban léteznie, de a doboz pozíciójának függvényében kell felparaméterezni. A (rendszer által) mozgatható dobozok pedig ezen tulajdonságukat gyakran változtatják, de erre is született megoldás: late-init és re-init-by-move.</p>
<p><em>És ekkor még nem ért véget a gondolkodás, a dobozok esztétikus elhelyezésének algoritmusa felér egy komolyabb diplomamunka témakörével, erről egy következő cikkben.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/diagram-engine-miert-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Takarítás szoftverkiadás előtt</title>
		<link>http://lab.symboltech.hu/2009/07/takaritas-szoftverkiadas-elott/</link>
		<comments>http://lab.symboltech.hu/2009/07/takaritas-szoftverkiadas-elott/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 07:14:44 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[forráskód]]></category>
		<category><![CDATA[kiadás]]></category>
		<category><![CDATA[lassítás]]></category>
		<category><![CDATA[messagebox]]></category>
		<category><![CDATA[mulasztás]]></category>
		<category><![CDATA[popup]]></category>
		<category><![CDATA[programozó]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[szoftverkiadás]]></category>
		<category><![CDATA[takarítás]]></category>
		<category><![CDATA[tempfile]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=222</guid>
		<description><![CDATA[Szoftvertermék kiadása előtt mindenképp ajánlott a kódot revizionálni. Több hónapos, több fejlesztővel folyó fejlesztés során számos olyan dolog "marad" a forráskódban, amely nem maradhat benne a kiadás előtt.]]></description>
			<content:encoded><![CDATA[<p>Szoftvertermék kiadása előtt mindenképp ajánlott a kódot revizionálni. Több hónapos, több fejlesztővel folyó fejlesztés során számos olyan dolog &#8220;marad&#8221; a forráskódban, amely nem maradhat benne a kiadás előtt.</p>
<p>Eddigi fejlesztési tapasztalataink alapján összeszedtük, hogy mikkel találkoztunk eddig. Nem titok és nem szégyen, velünk is előfordul, mi is mulasztottunk már:</p>
<p style="text-align: left;"><strong><img class="aligncenter size-medium wp-image-239" title="wrongway" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/wrongway-204x300.jpg" alt="wrongway" width="204" height="300" /></strong></p>
<p style="text-align: left;"><strong>Direkt lassítás.</strong> Nem károkozás, sokkal inkább professzionális munkamódszer, amikor lassabb számítógépet emulálva szándékos lassításokat helyezünk el a kódban. Nem célszerű ezt a kiadott verzióban is benne felejteni.<br />
<em><strong>Megoldás:</strong> #warning pragma használata</em></p>
<p><strong> </strong></p>
<p><strong>Felugró ablakok. </strong>Hibakeresési céllal sok programozó használ felugró ablakokat, sőt &#8211; bár nem illik, de néha az átlagosnál durvább verbális kifejezéseket is. Mivel ezek hibafelderítési célokat szolgálnak, általában ott maradnak benne a kódban, ahol csak alapos tesztelés során talál rá az ember/tesztelő. A végfelhasználónál megjelenő, nem értelmezhető, oda nem illő üzenetek presztízsrombolók.<br />
<em><strong>Megoldás:</strong> Üzenet megjelenítése Debug.WriteLine()-nal.</em></p>
<p><strong> </strong></p>
<p><strong>A bűvös new Random(). </strong>A végfelhasználó nem veszi észre mindig, de számos helyen alkalmazunk véletlen tesztadatokkal való feltöltést. Nem szerencsés, ha a végfelhasználónál történő új vevő rögzítéskor a vevő neve és címe már kitöltésre került tipikusan &#8220;<strong>Kovács Géza</strong>&#8221; és &#8220;<strong>Kiss János</strong>&#8221; nevekkel.<br />
<em><strong>Megoldás:</strong> new Random() konstruktorok megkeresése a forráskódokban.<br />
<strong>Saját tapasztalat:</strong> Nem minden ilyen konstruktor kell, hogy megszűntetésre kerüljön. Legutolsó projektünk a tisztítás után 7 helyen használta a Random konstruktort.</em></p>
<p><strong> </strong></p>
<p><strong>Ideiglenes fájlok írása.</strong> XML vagy bármilyen más adatátvitel implementálása közben gyakran mentjük az átvitt adatokat átmeneti fájlokba. Sok esetben ez a <strong>C:\tempfile.dat</strong>, amely azon kívül, hogy az ügyfél számítógépén furcsán mutat, rendes biztonsági házirendet tartalmazó környezetben (a fájlírás letiltása miatt) IOException-t eredményez.<br />
<em><strong>Megoldás:</strong> if DEBUG direktíva használata fájl írásakor.</em></p>
<p><strong>Takarításra fel!</strong> </p>
<p><img class="alignleft size-medium wp-image-225" title="sweep" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/sweep-300x205.jpg" alt="sweep" width="300" height="205" /> </p>
<p> </p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/takaritas-szoftverkiadas-elott/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Windows 7 tálca újdonságai &#8211; fejlesztői szemmel</title>
		<link>http://lab.symboltech.hu/2009/07/windows-7-talca-ujdonsagai-fejlesztoi-szemmel/</link>
		<comments>http://lab.symboltech.hu/2009/07/windows-7-talca-ujdonsagai-fejlesztoi-szemmel/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 12:43:02 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Fejlesztői hírek]]></category>
		<category><![CDATA[Nagyvilág eseményei]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[folyamatjelző]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[projekt]]></category>
		<category><![CDATA[tálca]]></category>
		<category><![CDATA[windows7]]></category>
		<category><![CDATA[WindowsApiCodecPack]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=200</guid>
		<description><![CDATA[Napvilágot látott (le is tölthető, meg is vásárolható lassan) a Microsoft új operációs rendszere, amely felhasználói szemmel újdonság, fejlesztői szemmel kihívás.]]></description>
			<content:encoded><![CDATA[<p>Napvilágot látott (le is tölthető, meg is vásárolható lassan) a Microsoft új operációs rendszere, amely felhasználói szemmel újdonság, fejlesztői szemmel kihívás.</p>
<p>Az alábbi <a href="http://windows.microsoft.com/en-US/windows7/products/features" target="_blank">linken</a> pár információval szolgálnak arról, mik is ezek az újítások. Én csak a tálca újdonságait emelném ki. Ezidáig a felhasználót a jobb alsó sarokban lévő úgynevezett értesítési területen lehetett informáli dolgokról. Milyen folyamatok futnak, mennyi ideig tart még a DVD megírása, a fájl letöltése.</p>
<p>Ezt most egy kicsit megbolondították és elérhetővé tették folyamatjelzők és ikonok megjelenítését a tálcán, ahol eddig a program főablakának címe szerepelt és jobb esetben az alkalmazás ikonja (számos fejlesztő felejt el ikont adni). A lehetőségek között szerepel:</p>
<ul>
<li>Véges folyamatjelző</li>
<li>Végtelen folyamatjelző (nem kiszámítható befejezési idővel)</li>
<li>Hibajelző (piros)</li>
</ul>
<p><img class="aligncenter size-full wp-image-206" title="taskbarwithprogressandoverlays" src="http://lab.symboltech.hu/wp-content/uploads/2009/07/taskbarwithprogressandoverlays.jpg" alt="taskbarwithprogressandoverlays" width="600" height="323" /></p>
<h3>És ehhez elég lesz a .Net framework 4.0?</h3>
<p>Elég, sőt 3.5-tel is működni fog, le kell hozzá tölteni a <a href="http://code.msdn.microsoft.com/WindowsAPICodePack" target="_blank">WindowsApiCodecPack</a>-et (4MB, súgóval együtt 19MB), amely forrásfájlokat szolgáltat számunkra, hogy a Windows7 fenti szolgáltatásait elérjük. <em>DirectX is kell hozzá a leírás szerint, de ez valószinüleg akkor szükséges, ha a CodecPack DirectX-es szolgáltatásait is szeretnénk használni.</em></p>
<p>Lehetőségünk lesz elérni a <code>ITaskBarList3</code> interfész <code>SetOverlayIcon</code>, <code>SetProgressState</code> és <code>SetProgressValue</code> metódusait, amivel lehetőségünk van a felhasználóinkat informálni egy hosszabb programfolyamat állapotáról.</p>
<p>Referenciaként a Core és Shell szerelvényeket kell a projekthez hozzáadni, ezen névterekben pedig megtalálhatóak a szükséges osztályok:</p>
<ul>
<li><code>Microsoft.WindowsAPICodePack.Shell.<strong>Taskbar</strong></code></li>
<li><code><code>Microsoft.WindowsAPICodePack.Shell.Taskbar.<strong>ProgressBar</strong></code></code></li>
<li><code><code><code>Microsoft.WindowsAPICodePack.Shell.Taskbar.<strong>OverlayIcon</strong></code></code></code></li>
</ul>
<p>Ezen kívül a <code>ProgressBarExt </code>és <code>OverlayIconExt </code>osztályok segítségével a Windows XP óta, a sok ablak megjelenítésekor összecsoportosuló programablakok mindegyike külön folyamatjelzővel látható el.</p>
<p>Tesztelés folyamatban&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/windows-7-talca-ujdonsagai-fejlesztoi-szemmel/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Amikor a számítógép maga az ember</title>
		<link>http://lab.symboltech.hu/2009/07/amikor-a-szamitogep-maga-az-ember/</link>
		<comments>http://lab.symboltech.hu/2009/07/amikor-a-szamitogep-maga-az-ember/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 12:15:36 +0000</pubDate>
		<dc:creator>developerteam</dc:creator>
				<category><![CDATA[Kikapcsolódás]]></category>
		<category><![CDATA[human]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[keyboard]]></category>

		<guid isPermaLink="false">http://lab.symboltech.hu/?p=191</guid>
		<description><![CDATA[Az alábbi kis video szösszenet elgondolkodtató. Miként tudja elvégezni számítógépes feladatainkat egy ember? Mekkora technológiai ugrás volt 1946-ban a Neumann elvű számítógép? Mi lenne ha nem lenne áram?]]></description>
			<content:encoded><![CDATA[<p>Az alábbi kis video szösszenet elgondolkodtató. Miként tudja elvégezni számítógépes feladatainkat egy ember? Mekkora technológiai ugrás volt 1946-ban a Neumann elvű számítógép? Mi lenne ha nem lenne áram?</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="300" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=4697849&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="300" src="http://vimeo.com/moogaloop.swf?clip_id=4697849&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://lab.symboltech.hu/2009/07/amikor-a-szamitogep-maga-az-ember/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

