LOGO OBJECT İLE SORGU İŞLEMİ

TIGER 3 ENTERPRISE

NEDEN İHTİYAÇ DUYULDU: LOGO SYSDE FİRMALARA FARKLI VERİTABANLARI ÜZERİNDEN İŞLEM YAPILABİLMEKTE. DOLAYISIYLA İLGİLİ VERİTABANINDAN OBJECT İLE SORGU KONTROLÜ YAPILIP ONA GÖRE DEVAM EDİLMESİ GEREKMEKTE(PROJE TABLOSU).

ÖNCE SORGUYU CEKMEK İSDEDİGİM TABLO İSMİ TESPİT EDİLİR-GetTableName(https://docs.logo.com.tr/public/wua/logo-objects/logo-objects-kuetuephanesi/unityapplication/gettablename)

string projectTable = AppUnity.GetTableName(229, firmNr, 0);
bool isProjectExists = ObjectProjectCodeControl(projectTable, L.PROJEKODU);
bool canContinue = true;
                        if (!isProjectExists)
                        {
                            canContinue = false;
                            WRITELOG(firmNr.ToString() + " PROJE KODU BULUNAMADI : " + L.PROJEKODU, null);
                        }
private static bool ObjectProjectCodeControl(string table, string code)
{
    bool isExists = false;
    string sql = "SELECT LOGICALREF FROM " + table + " WHERE CODE = '" + code + "'";
    string resultTxt = "";
    UnityObjects.Query Qry = AppUnity.NewQuery();
    Qry.Statement = sql;
    if (Qry.OpenDirect())
    {
        bool res = Qry.First();
        while (res)
        {
            resultTxt = Qry.QueryFields[0].Value.ToString();
            isExists = true;
            res = Qry.Next();
        }
    }
    else
    {
        MessageBox.Show(Qry.DBErrorDesc.ToString());
    }
    Qry.Close();
    return isExists;
}

LOGO OBJECTS INVOICE ITEXT

Logo objectse invoice fatura atarken ITEXT her 255 karaktere ¦ konması gerekmektedir .

İlgili fonksiyon:

    public static string SplitString(string input)
        {
            int chunkSize = 255;
            List<string> chunks = new List<string>();
            for (int i = 0; i < input.Length; i += chunkSize)
            {
                int remaining = Math.Min(chunkSize, input.Length - i);
                chunks.Add(input.Substring(i, remaining));
            }
            return string.Join("¦", chunks);
        }
            F.DataFields.FieldByName("ITEXT").Value = SplitString(description);