Google Analytics İzleme

24 Haziran 2010

Toshiba Satellite laptop'da Scroll Lock tuşu

Normalde Toshiba Satellite laptop'da Scroll Lock tuşu bulunmamaktadır. Bu tuşu Fn + F12 kombinasyonu ile sağlanmaktaymış. Buna ihtiyacım Teamviewer programını kullanırken karşı bilgisayarda ekran görüntüsü tuşuna(printscreen) basmayı etkin kılmak için oldu. Yani Fn+F12+PrintScreen üçlü kombinasyonu ile Teamviewer içinde karşı bilgisayarda ekran görüntüsü özelliği çalıştırılmış olmaktadır.

string.format metodunda { (süslü parantez) kullanmak

string.form metodu .net yazılımcıları için string türündeki verileri daha temiz bir şekilde biçimlendirmeleri için oldukça işe yarayan bir metod.ancak bu metodu kullanırken biçimlendirmek istediğiniz string ifadesinde { (süslü parantez) karakteri geçiyorsa muhtemelen "Input string was not in a correct format Error" hatası alırsınız.bu sorunu çözmek için de, yapılması gereken { ve } karakterini çift olarak kullanmak.örneğin:

_field = string.Format("public {0} {1} {{ get; set; }}", TurDondur(dc.DataType.Name), dc.ColumnName);


Kaynak:http://www.maxiasp.net/post/2008/12/30/stringformat-metodunda-7b-(suslu-parantez)-kullanmak.aspx

21 Haziran 2010

Coolite v0.8 ie8 görüntüleme sorunu, uyumsuzluk sorunu

Bu sorunu yaşamamak için:

protected void Page_Load(object sender, EventArgs e)
        {

            // ie 8'de ie 7 gibi çalışmasını sağlama
            // 21.06.2010 ishak
            Response.AppendHeader("X-UA-Compatible", "IE=EmulateIE7");
            ....
        }

kodunu sayfaya eklemek gerekmektedir.
Direkt aspx sayfasına head etiketi altına <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> eklemesi işe yaramaktadır, bu etkietin üstüne sürekli Ext css tanımları atanmaktadır, bundan dolayı da ie7 çalıştırma özelliği çalışmamaktadır. Code-behind tarafında kodla eklenmelidir.

Başka bir çözüm:

Coolite, by default will "break" any page that has the <meta http-equiv="X-UA-Compatible" content="IE=7" /> tag in  it, as IE requires the tag to be pretty much the first one in the <head> tag

Any page that has Coolite components loaded will thus have the Coolite script/CSS tags inserted right at the top of the <head> element. Fear not though, the Coolite ScriptContainer comes to the rescue! By adding this into the <head> element in your page/master page, you can tell Coolite where to insert its tags which thus stops it from breaking the X-UA-Compatible meta-tag.

---


16 Haziran 2010

sap gui'de bir yazıyı (text) seçme, geçeci belleğe kopyalama (copy & paste at sap gui)

sap gui'de herhangi bir yazıyı seçmek için klasik windows Ctrl+C tuş seçeneği işe yaramamaktadır. 
Seçim yapabilmek için önce Ctrl + Y sonra Ctrl + C yapmalıyız, Ctrl + V ile de istediğimiz yere yapıştırma yapabiliriz.

14 Haziran 2010

Coolite Ext Textfield kontrolünde arkaplan rengini değiştirme

Normal görünüm:

<ext:TextField ID="TextField1" runat="server" Width="280px"  >
                                </ext:TextField>
ext_textfield_normal_gorunum.png

Coolite Ext:Textfield kontrolünün arkaplan rengini değiştirmek için 
StyleSpec="background-color:yellow; background-image:none; " şeklinde atama yapılmalıdır.
Bu atama sonucunda aşağıdaki gibi görünmektedir:
ext_textfield_renkli_gorunum.png



08 Haziran 2010

Usb Bellek veya Flash Bellek'de klasörler Gizli niteliği donmuş veya pasif olmuş

Usb Bellek veya Flash Bellek'de klasörler Gizli niteliği donmuş veya pasif olmuş, bundan dolayı klasör ve dosyalarımı göremiyordum. Antivirüs taraması yaptım herhangi bir virüs bulmadı. Ben de bu nitelik bilgilerini değiştirmek için aşağıdaki dos komutunu dos ismtemcisinde çalıştırdım ve sorun düzeldi.

Bellek kartı pc'de H ile bağlıydı, dosda H: yazarak , bu sürücüye geçtim.

H:\>attrib -r -a -s -h /s /d *.*

Bu komut öznitelikleri kaldırmaya yaramaktadır. 

Yardım aldığım kaynak:

06 Haziran 2010

NoSQL Giriş ve MongoDB

NoSQL, isminden de anlaşılabileceği gibi SQL kullanılmadığı veritabanlarına verilen genel bir isimdir. Genelde ORM ile karıştırılmaktadır. NoSQL, işişkisel veritabanlarına (RDMS) alternatif bir tekniktir.

ilişkisel bir veritabanında (RDMS), tablolar oluşturur, tabloları birbirleriyle ilişki kurarak, join, kartezyen gibi SQL cümlecikleriyle kullanırız. Bunun birçok faydası vardır. Hatta yazılım geliştirirken, SQL den kaçınmak maksadıyla, ORM aracları geliştirilmiştir. Bu sayede, veritabanında yer alan tablolara, nesne gözüyle bakılabilmiş, OOP mantığıyla üzerinde işlem yapılabilmiştir.

NoSQL ise böyle birşey değildir. ORM araçları, sizin bir nesneye set ettiğiniz değerleri, SQL cevirerek, sizin SQL ile uğraşmanızı engellemiş olurlar. NoSQL veritabanları dağıtık bir mimari ile oluşturulmuş olup, yarının teknolojisi olarak görülmektedirler. Google’ın BigTable, Amazon’un Dynamo, Facebook’un Cassandrabu tür birer veritabanlarıdır.Bu üç veritabanı da PB boyutunda veri tutmak için geliştirilmiştir. Ben bunlardan konfigurasyon acısından daha kolay yapılan döküman tabanlı bir veritabanı hakkında bilgi vereceğim: MongoDB.

MongoDB, 10gen tarafından geliştirilmiş, döküman tabanlı bir NoSQL veritabanıdır. Bubağlantıdan işletim sisteminize göre indirebilrisiniz. Eğer Ubuntu/Debian kullanıyorsanız, bu adresten nasıl kurabileceğinizi bakabilirsiniz.

Alıntı: http://rayyildiz.com/2010/05/nosql-giris-ve-mongodb/


04 Haziran 2010

Coolite Ext Textfield kontrolünde 0-9 arasındaki karakterleri doğrulama metodu yazma

Örnek:

js fonsksiyonu:

/* 04.06.2010 ishak, 0-9 arasındaki rakamları giriş kontrolü yapan metod */
        function validatorNumber(strValue)
        {
                //debugger; 
                // \s=boşluk karakteri
                var objRegExp = /([^0-9])+/;
                if(objRegExp.test(strValue))
                {
                    return false;
                }
                else
                {
                    return true;    
                }
        }


Coolite ext kontrolü:

<ext:TextField runat="server" ID="tfCallNumber"
                                        MaxLength="10" MaxLengthText="Bu alan 10 karakter olmalı!" 
                                        MinLength="10" MinLengthText="Bu alan 10 karakter olmalı!"                                        
                                        AllowBlank="true"
                                        Width="150px"
                                        MaskRe="[0-9]" Validator="validatorNumber"
                                         >                                        
                                    </ext:TextField>



Ext.form.VTypes doğrulama yöntemlerine (custom)size özgü özel doğrulama metodu ekleme

Ext.form.VTypes doğrulama yöntemlerine (custom)size özgü özel doğrulama seçenekleri ekleyeceğiz.

Örneğimiz:

js kodu:


// custom Vtype for vtype:'time'
var timeTest = /^([1-9]|1[0-9]):([0-5][0-9])(\s[a|p]m)$/i;
Ext.apply(Ext.form.VTypes, {
    //  vtype validation function
    time: function(val, field) {
        return timeTest.test(val);
    },
    // vtype Text property: The error text to display when the validation function returns false
    timeText: 'Not a valid time.  Must be in the format "12:34 PM".',
    // vtype Mask property: The keystroke filter mask
    timeMask: /[\d\s:amp]/i
});

Başka bir örnek:



// custom Vtype for vtype:'IPAddress'
Ext.apply(Ext.form.VTypes, {
    IPAddress:  function(v) {
        return /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(v);
    },
    IPAddressText: 'Must be a numeric IP address',
    IPAddressMask: /[\d\.]/i
});


Coolite ext kontrolünde kullanımı:


<ext:TextField runat="server" FieldLabel="IP Adresi" Vtype="IPAddress" />


<ext:TextField runat="server" FieldLabel="Ders Saati" Vtype="time"  />


Yukarıdaki js doğrulama metodu eklemelerinden time doğrulaması içinde:
  timeText ile doğrulama sonucunda kullanıcıya hata bilgisi verilir,
  timeMask ile de istemci tarafında kullanıcının klavyeden tuşa basarken kullanılacak regex tanımlanmaktadır.

Coolite Ext Textfield kontrolünde türkçe alfa karakterleri doğrulama metodu yazma

Örneğimiz:

js fonksiyonu:

<script type="text/javascript" language="javascript">
/* 04.06.2010 ishak, türkçe karakter girişi kontrolü yapan metod */
        function validatorTurkishAlphaWithSpace(strValue)
        {
                //debugger; 
                // \s=boşluk karakteri
                var objRegExp = /([^a-zA-ZçÇğĞıIiİöÖşŞüÜ\s])+/;
                if(objRegExp.test(strValue))
                {
                    return false;
                }
                else
                {
                    return true;    
                }
        }
        
</script>

Coolte kontrolümüz:

<ext:TextField runat="server" ID="tfSurname" 
                                        AllowBlank="false" BlankText="Bu alanı doldurmanız gerekiyor!" 
                                        MaxLength="40" MaxLengthText="Bu alan 40 karakteri geçemez!"
                                        Width="150px"
                                        Validator="validatorTurkishAlphaWithSpace" MaskRe="[a-zA-ZçÇğĞıIiİöÖşŞüÜ\s]" >
                                        <Listeners>
                                            <Change Handler=" upperCase(this.id);" />
                                        </Listeners>
                                    </ext:TextField>


Coolite Ext Textfield kontrolünde isteğinize göre farklı doğrulama metodu yazma

Coolite Ext Textfield kontrolünde isteğinize göre farklı doğrulama metodunu istemci tarafında javascript ile yazacağız.
0-9 arasındaki rakamların ve /(slash) karakterlerine izin verilecek şekilde örnek yaptım. Burada bu doğrulama için regular expression yöntemini kullandım.
Örnek şu şekildedir:

<script type="text/javascript" language="javascript">

/* 03.06.2010 ishak, karakter ve slash girişi kontrolü yapan metod */
            function NumberWithSlashCheck(strValue)
            {
                //debugger;
                var objRegExp = /([^0-9/])+/;
                if(objRegExp.test(strValue))
                {
                    return false;
                }
                else
                {
                    return true;    
                }
            }            
</script>

Doğrulama js metodu yazdığımız coolite kontrolü ile ise şudur:

<ext:TextField runat="server" ID="tfVolumeNo" MaxLength="10"  
                                        MaxLengthText="Bu alan 10 karakteri geçemez!"
                                         Width="150px" MaskRe="[0-9/]" Validator="NumberWithSlashCheck" >
                                    </ext:TextField>


Bu kontrolün MaskRe="[0-9/]" özelliğine yapılan atama ile de istemci tarafında klavye tuşuna basma esnasında kontrol edilmelip engelleme yapılmaktadır. Yazdığımız js fonksiyonu  da Validator="NumberWithSlashCheck" özelliğine atanmaktadır.



02 Haziran 2010

Coolite Ext gridpanel'de yüzdeli yazdırma

Örnek kullanım şu şekildedir:

Javascript:
<script type="text/javascript">
        var template = '<span>{0}</span>';        
 
        var pctChange = function(value) {
            return String.format(template, '%' + value);
        } 
</script>

 

Gridpanel içinde ilgili kolon:

<ext:Column Header="Change" Width="20" Sortable="true" DataIndex="pctChange">
                            <Renderer Fn="pctChange" />
                        </ext:Column> 

Store için ilgili kayıt:

        <ext:RecordField Name="pctChange" Type="Float" />

Asp.net ajax istek başlagıcında ve bitişinde sayfada javascript çalıştırma

Örnek kullanım şu şekildedir:

<asp:ScriptManager ID="ScriptManager1" runat="server" />
 
<script type="text/javascript" language="javascript">
 
                Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
                Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
                function BeginRequestHandler(sender, args)
                 {
                     document.body.style.cursor ='wait';
                }
 
                function EndRequestHandler(sender, args)
                 {
                     document.body.style.cursor ='default'; 
                }               
</script>