<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های yashargorgani</title>
        <link>https://virgool.io/feed/@yashargorgani</link>
        <description>فوق لیسانس IT، توسعه دهنده وب اپلیکیشن.</description>
        <language>fa</language>
        <pubDate>2026-06-10 12:33:10</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/2334/avatar/R9F3Yn.png?height=120&amp;width=120</url>
            <title>yashargorgani</title>
            <link>https://virgool.io/@yashargorgani</link>
        </image>

                    <item>
                <title>تابع (COALESCE (a, b در اس کیو ال</title>
                <link>https://virgool.io/@yashargorgani/%D8%AA%D8%A7%D8%A8%D8%B9-coalesce-a-b-%D8%AF%D8%B1-%D8%A7%D8%B3-%DA%A9%DB%8C%D9%88-%D8%A7%D9%84-btxriy2pgqyp</link>
                <description>دیتابیسمن ازون برنامه نویسام که علاقه ی زیادی به دیتابیس، کوئری ، ویو ، جوین ، گروپ و گزارش و تحلیل دارم. تو یه پروژه ای کار میکردم که متعلق به شرکتی بود، این شرکت دو نوع مشتری داشت: مشتری حقیقی، مشتری حقوقی. تو جدول ثبت فروشها برا هر کدوم یه فیلد با کلید خارجی داشت.دیاگرام دیتابیس حالا من میخواستم یه ویو بسازم مبلغ کل خریدهای هر مشتری رو جمع بزنه و لیست کنه. خب مشخصه که اول باید جدول خرید رو با جدول مشتری حقیقی و مشتری حقوقی جوین میکردم، بعد براساس کد مشتری گروپ میکردم. اما نکته ای که بود، من نمیخواستم یه ستون برای نام مشتری حقیقی و یه ستون برای نام مشتری حقوقی داشته باشم، میخواستم کلا یه ستون برای نام مشتری داشته باشم. برای همین از تابع COALESCE استفاده کردم. این تابع به این صورته که اگر یکی از آرگومانهاش null باشه، آرگومان دیگه رو به کار میبره. SELECT        
   dbo.Purchase.PersonId, dbo.Purchase.LegalPersonId, 
   COALESCE (MAX(dbo.Person.Name), MAX(dbo.LegalPerson.Name)) AS CustomerName, 
   SUM(dbo.Purchase.Amount) AS SumAmount
FROM            
   dbo.Purchase 
LEFT OUTER JOIN
   dbo.Person ON dbo.Purchase.PersonId = dbo.Person.Id 
LEFT OUTER JOIN
   dbo.LegalPerson ON dbo.Purchase.LegalPersonId = dbo.LegalPerson.Id
GROUP BY 
   dbo.Purchase.PersonId, dbo.Purchase.LegalPersonIdبه همین راحتی میتونم یه ستون نام مشتری داشته باشم که چه مشتری حقوقی چه حقیقی نام اونا تو یه ستون میاد.</description>
                <category>yashargorgani</category>
                <author>yashargorgani</author>
                <pubDate>Wed, 11 Apr 2018 23:00:35 +0430</pubDate>
            </item>
                    <item>
                <title>تریگر جاوا اسکریپت روی نتیجه ایجکس</title>
                <link>https://virgool.io/@yashargorgani/%D8%AA%D8%B1%DB%8C%DA%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D8%B1%D9%88%DB%8C-%D9%86%D8%AA%DB%8C%D8%AC%D9%87-%D8%A7%DB%8C%D8%AC%DA%A9%D8%B3-yx2x9rx21wyq</link>
                <description>یه فرم داشتم که یه قسمت از اون سرچ انجام میداد، نتایج اون سرچ در قالب PartialView برمیگشت -قطعه کد اچ تی ام که شامل چند تا المنته (ASP.NET MVC). هر نتیجه سرچ شامل یه چک باکس بود که میخواستم وقتی که هر کدوم از اون چک باکس ها انتخاب شد، یه عمل جاوااسکریپتی انجام بشه (تریگر). اما مشکل اینجا بود: چون این نتیجه ایجکس بعد از لود کامل فرم برمیگشت، تریگر روی اونها عمل نمیکرد (حدس من این بود).بعد از کلی جستجو پاسخ مناسبی پیدا نکردم. راه حل من به این صورت بود: ابتدا یک تابع که تریگر داخل اونه نوشتم -یعنی تریگر رو داخل یه تابع نوشتم:            function onChckBoxClick() {
                            $(&#039;.chckBox&#039;).click(function () {
                             //some code here
            });و بعد با پاسخ (صحیح) ایجکس، این تابع رو صدا زدم:                    success: function (result) {
                              $(&#039;#divResult&#039;).html(result);                            
                               onChckBoxClick(); 
                     }به این صورت تریگر روی پاسخ ایجکس هم کار میکرد.</description>
                <category>yashargorgani</category>
                <author>yashargorgani</author>
                <pubDate>Wed, 14 Mar 2018 08:51:30 +0330</pubDate>
            </item>
            </channel>
</rss>