úterý 17. ledna 2017

Stimulsoft Reporting

ConnectionString

Bez hesla

Data Source=.\sqlExpress;Initial Catalog=AdventureWorks.EN;Integrated Security=True;Persist Security Info=True

S heslem 

Data Source=.\sqlexpress;Initial Catalog=AdventureWorks;Integrated Security=False;Persist Security Info=True;User ID=demo;Password=demo
Důležitý parametr je Persist Security Info=True bez něj se reporting k databázi nepřipojil.

Změna ConnextionString v XML

V XML šabloně je potřeba:
1. Najít všechny elementy s atributem type="Stimulsoft.Report.Dictionary.StiSqlDatabase"
2. Podle Alias najít ConnectionString který chceme upravit
3. Nahradit hodnotu tagu ConnectionString

Doporučení:Neměňte název Tagu pod rodičovským tagem Databases ani hodnotu tagu Name. Raději použijte Alias. Podle názvu se totiž na něj odkazuje tag DataSources.

 <DataSources isList="true" count="1">
      <Production_Product2 Ref="3" type="Stimulsoft.Report.Dictionary.StiSqlSource" isKey="true">
        <Alias>Production.Product2</Alias>
        <Columns isList="true" count="25">
          <value>ProductID,System.Int32</value>
         ...
        </Columns>
        <CommandTimeout>30</CommandTimeout>
        <Dictionary isRef="1" />
        <Name>Production.Product2</Name>        <NameInSource>sqlDataSource1</NameInSource>
    </Production_Product2>
 </DataSources>

Zašifrovaný ConnectionString

Pokud nechcete používat šifrovaný ConnectionString tak stačí v XML šabloně nahradit tag ConnectionStringEncrypted za ConnectionString

XSLT

XSLT

Práce s XSLT ve Visual Studiu
http://www.geekzone.co.nz/vs2008/6283

template mapuje šablonu na element určený XPath dotazem v parametru match

Časté chyby

Pokud match nedokáže vyhledat podle XPath element, který v XML dokumentu opravdu je. Problém bude nejspíše v chybějícím namespace.

http://stackoverflow.com/questions/1730875/xslt-transform-xml-with-namespaces

Šablona co se zacyklí

<xsl:template match="/">
<body>
<xsl:apply-templates select="."></xsl:apply-templates>
</body>
</xsl:template>

Zdroje:
http://zvon.org/xxl/XSLTutorial/Books/Output/contents.html

Raspbian na 4GB SD kartu

Na 4G micro SD kartu je možné nahrát asi jen 2015-05-05-raspbian-wheezy.zip Novější distribuce se na kartu prostě nevejdou.

pondělí 16. ledna 2017

Telerik reporting a běžné chyby


Chyba:
An error has occurred while processing Report 'BlankOneColumn':
Missing operator before 'Ternary operator requires 2 operators' operand.
Důvod:
Překlep ve  výrazu mapování polí.
  objectDataSource.CalculatedFields.Add(
                    new Telerik.Reporting.CalculatedField(
                        "FullName",
                        typeof(string),
                        "=Fields.TITLE + '   ' + year: Fields.YEAR"));
Oprava:
                        "=Fields.TITLE + '   year: ' +  Fields.YEAR"));

pátek 13. ledna 2017

Windows 10 IoT core pro Raspberry Pi 3 - strastiplná cesta

Jak dostat Win 10 IoT Core na RPI3 - těžko


  1. Založit si účet na MS insider
  2. Stáhnout image pro Insider preview (Insider Preview) https://developer.microsoft.com/cs-cz/windows/iot/Downloads 17134 (nebo https://www.microsoft.com/en-us/software-download/windowsiot 17763)
  3. mountnout image a spustit instalaci
  4. potom v IoT Dashboard vybrat custome a najít v PF ffd soubor a ten nechat nainstalovat na sd kartu

Přes NOOBS se mi to nepovedlo. Po vložení SD karty do Rpi se zobrazila chybová hláška o nějakém resizeingu oddílu nebo co ...


Mám ale podezření že opravdu hodně záleží jakou máte SD kartu.
A kupodivu nezáleží ani tak na značce jak na modelu karty v rámci i jedné značky jako je např.: Kingstone.

Zdroj:
https://developer.microsoft.com/en-us/windows/iot/Docs/GetStarted/rpi3/sdcard/insider/getstartedstep2


Micro SD karty na eBay
SanDisk-16GB
Adapter USB 2.0 Micro SD SDHC
Rpi Shop 16GB Kingstone

Diskuze:
https://www.raspberrypi.org/forums/viewtopic.php?t=184387

Formátovací Tool:
http://www.ridgecrop.demon.co.uk/index.htm?guiformat.htm

Závěr a řešení:
Na diskuzích zmiňují jako důvod nedostatečné napájení. Já to zkoušel s originál zdrojem, který dává 3A. Jakmile jsem vyměnil SD kartu a Windows 10 IoT Core nainstaloval na SanDisk edge 16GB micro SDHC UHS-I U1 A1 za cca 237,- Kč všechno bez problémů naběhlo.
Takže než strávit dlouhé hodiny nad laborováním a snažit se to nahrát na jinou kart (Kingston, Transcend, AData, ... ) tak je opravdu lepší jít ověřenou cestou.

DevExpress - Reporting

Designer

Reporty se vytváří pomocí designeru ve Visual Studiu. Nový report přidáte pohodlně pomocí kontextového menu DevExpress Report Wizard v Solution Exploreru
Designer má podle mě jednu dost důležitou část hodně dobře schovanou. A tou je menu, které Vám umožní uložit a načíst report z interního formátu *.repx, nebo i od konkurenčních firem jako např. Crystal Reports, Active reports, .... 

Schované menu s vlastnostmi reportu

Rozbalené "tajné" menu

Důležité menu je také v hlavním toolbaru Visual Studia XtraReports.
Zde se skrývá Report Explorer a Field List, které jsou docela podstatné.

Přidání parametru do Reportu

Zdroj:

neděle 8. ledna 2017

Fler.cz Api - zkušenost

PHP vs. C#

Než začnete využvat funkce api musíte nejdříve přeložit PHP funkci pro přihlášení k API do C#.
První věc co Vás vytrestá je funkce time() potom funkce hash_hmac()
Jak toto zvládnete musíte si dát pozor na to aby hlavička X-FLER-AUTHORIZATION obsahovala url a http metodu (Get, Post) stejnou jako posíláte request.

error_number je k ničemu

U parametru error_number jsem se v resultu nesetkal s jinou hodnotou než je 99999.

Chyby během přihlášení

Problém s TimeStamp
"error": "Platnost klíče vypršela"


Hodnota klíče je špatná
{
    "error": "Neznámý veřejný klíč",
    "error_number": 99999
}

Pokud máte třeba chybně url v podpisu
{
    "error": "Neplatná autorizace",
    "error_number": 99999,
    "http_code": 401
}

Chyby během vytváření zboží

Povinné parametry zboží

{
        public string category = "1";

        public string title = "pokus";
        public string description = "pokus";
        public decimal price = 12.45M;
        public string stock_unit = "piece";
        public int delivery = 1;
        public string colors = "1,2";

        public string photos_mode = "url"; 
        public string photos_data=   "http://copywriting.goneo.cz/img/10668-160-w-15576.jpg";
        public string photos_main_geom = "4"
}

"error": "Upload mode disabled- nevím co to znamená

Asi problém s nahráním povinné fotky
"error": {
        "invalid_fields": {
            "photos_main_geom": "Neplatný formát hodnoty: ^[0-9,]$"
        }
    },

    "error_number": 99999

Nevím co to chtělo dal jsem tam 4 a pak mi to už vrátilo toto:
Pozor! Vytvořený produkt je potřeba ale hledat v nedostupných položkách.


{
    "id": 8140101,
    "title": "pokus 2",
    "photo_s": "https://static2.flercdn.net/products/4/6/463270/1/0/1/8140101/cxndytyshnpxkd-s.jpg",
    "photo_m": "https://static2.flercdn.net/products/4/6/463270/1/0/1/8140101/cxndytyshnpxkd-m.jpg",
    "photo_b": "https://static2.flercdn.net/products/4/6/463270/1/0/1/8140101/cxndytyshnpxkd-b.jpg",
    "created_html": "
8140101
" }

Zdroje:
https://www.fler.cz/uzivatel/nastroje/flerapi?view=docs&section=intro