Sayfayı Yazdır | Pencereyi Kapat

SQL Server Hatası

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1077
Tarih: 13 Temmuz 2025 Saat 08:21
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: SQL Server Hatası
Mesajı Yazan: turgutkir
Konu: SQL Server Hatası
Mesaj Tarihi: 11 Temmuz 2025 Saat 09:07
Projede main panel üzerinden "Yönetici" yi seçtip devam etmek butonuna tıkladığımda şu hatayı alıyorum :
"The client cannot connect to the server because the requested instance was not available. Use SQL Server Configuration Manager to make sure the SQL Server instance is configured correctly. "

MainCode:
//------------------------------------------------------------------
//  MainCode – Rol seçimi ekranı
//------------------------------------------------------------------

var
  MainForm         : TclForm;
  lblTitle, lblDesc: TclLabel;
  cmbRole          : TclComboBox;
  btnNext          : TclButton;

/*------------------------------ OpenPanel ------------------------*/
void OpenPanel;
var
  roleVal : String;
{

  roleVal = cmbRole.GetValueIndex(cmbRole.ItemIndex);

  if roleVal == 'personel' {
    Clomosy.RunUnit('uPersonnelForm');
  } else if roleVal == 'yonetici' {
    Clomosy.RunUnit('uManagerForm');
  } else {
    ShowMessage('Lütfen önce rol seçin.');
  }
}
/*----------------------------- Form kurulumu --------------------*/
{
  MainForm = TclForm.Create(Self);
  MainForm.clSetCaption('Rol Seçimi');

  lblTitle = MainForm.AddNewLabel(MainForm,'lblTitle',
              'Ziyaretçi Yönetim Sistemine Hoş Geldiniz');
  lblTitle.Font.Size  = 18;
  lblTitle.Align      = alTop;
  lblTitle.Margins.Top= 24;

  lblDesc  = MainForm.AddNewLabel(MainForm,'lblDesc','Lütfen rolünüzü seçin:');
  lblDesc.Align       = alTop;
  lblDesc.Margins.Top = 12;

  cmbRole  = MainForm.AddNewComboBox(MainForm,'cmbRole');
  cmbRole.AddItem('Personel','personel');
  cmbRole.AddItem('Yönetici','yonetici');
  cmbRole.Align       = alTop;
  cmbRole.Margins.Top = 20;
  cmbRole.Width       = 200;
  cmbRole.ItemIndex   = -1;

  btnNext = MainForm.AddNewButton(MainForm,'btnNext','Devam Et');
  btnNext.Align       = alTop;
  btnNext.Margins.Top = 32;
  btnNext.Width       = 200;
  btnNext.Height      = 40;
  MainForm.AddNewEvent(btnNext, tbeOnClick, 'OpenPanel');

  MainForm.Run;
}

uManagerForm:
//------------------------------------------------------------------
//  uManagerForm – Yönetici Paneli
//------------------------------------------------------------------

var
  FrmMgr       : TclForm;
  lstMeetings  : TclListView;

  edtStart, edtEnd : TclProEdit;   // tarih girişleri
  cmbUser      : TclComboBox;
  btnFilter    : TclProButton;
  qData        : TclSqlQuery;

/*---------------  personel listesini doldur  --------------------*/
void LoadUsers;
var
  q : TclSqlQuery;
{
  q = Clomosy.DBSQLServerQueryWith(
        'SELECT ID, FullName FROM Users ORDER BY FullName');

  cmbUser.Clear;

  while (not q.EOF) {
    cmbUser.AddItem(
      q.FieldByName('FullName').AsString,   // görünen metin
      q.FieldByName('ID').AsString          // gizli değer
    );
    q.Next;
  };
}

/*---------------  tarih + personel filtresi  --------------------*/
void ApplyFilter;
var
  sql : String;
  uid : String;
{
  sql =
    'SELECT M.ID AS RECORD_GUID, ' +
    '       U.FullName + '' - '' + M.CompanyName AS MAIN_TEXT, ' +
    '       CONVERT(nvarchar, M.MeetingDate,104) + '' '' + ' +
    '       CONVERT(nvarchar, M.MeetingDate,108) AS SUB_TEXT ' +
    'FROM   Meetings M ' +
    'LEFT JOIN Users U ON U.ID = M.UserID ' +
    'WHERE  1=1';

  /* Tarih aralığı */
  sql =
    sql + ' AND M.MeetingDate BETWEEN ' +
    QuotedStr(Trim(edtStart.Text) + ' 00:00') +
    ' AND ' +
    QuotedStr(Trim(edtEnd.Text)   + ' 23:59');

  /* Personel filtresi */
  if (cmbUser.ItemIndex <> -1) {
    uid = cmbUser.GetValueIndex(cmbUser.ItemIndex);
    if (uid <> '') {
      sql = sql + ' AND M.UserID = ' + uid;
    };
  };

  try
    qData.SQL.Text = sql;
    qData.Open;
    lstMeetings.clLoadListViewDataFromDataset(qData);
  except
    ShowMessage('Sorgu hatası: ' + LastExceptionMessage);
  };
}

/*---------------  formu oluştur  -------------------------------*/
void CreateForm;
{
  FrmMgr = TclForm.Create(Self);
  FrmMgr.clSetCaption('Yönetici Paneli');
  FrmMgr.SetBounds(120, 70, 720, 560);

/* ---------- SQL Server bağlantısı ---------- */
if not Clomosy.DBSQLServerConnect(
       'SQL Server',
       'TURGUT-KIR\\ATIKER',  
       'TURGUT25',             
       'sa',                   
       '1',                    
       1433                    
     ) {
  ShowMessage('Veritabanına bağlanılamadı. Sunucu veya kimlik bilgilerini kontrol edin.');
  Exit;   // Bağlantı yoksa formu açmıyoruz
};

  /* Sorgu nesnesi */
  qData = TclSqlQuery.Create(nil);
  qData.Connection = Clomosy.DBSQLServerConnection;

  /* UI bileşenleri */
  edtStart = FrmMgr.AddNewProEdit(FrmMgr,'edtStart','Başlangıç (yyyy-MM-dd)');
  edtEnd   = FrmMgr.AddNewProEdit(FrmMgr,'edtEnd'  ,'Bitiş (yyyy-MM-dd)');
  cmbUser  = FrmMgr.AddNewComboBox(FrmMgr,'cmbUser');

  btnFilter = FrmMgr.AddNewProButton(FrmMgr,'btnFilter','Uygula');
  FrmMgr.AddNewEvent(btnFilter, tbeOnClick, 'ApplyFilter');

  lstMeetings = FrmMgr.AddNewListView(FrmMgr,'lstMeetings');
  lstMeetings.Align = alClient;

  /* Varsayılan tarih aralığı = bugünün tarihi */
  edtStart.Text = FormatDateTime('yyyy-MM-dd', Now);
  edtEnd.Text   = edtStart.Text;

  /* Veri yükle */
  LoadUsers();
  ApplyFilter();

  FrmMgr.Run;
}

CreateForm();





Cevaplar:
Mesajı Yazan: Sudesigirci
Mesaj Tarihi: 11 Temmuz 2025 Saat 09:37
Merhaba Turgut , Sql server management studioada serverin 'running' durumunda olduğundan emin misin bir diğer konu da sunucu adının kullanıcı adının şifrenin ve veritabanı adının doğruluğundan emin olmalısın  
İyi Çalışmalar


Mesajı Yazan: turgutkir
Mesaj Tarihi: 11 Temmuz 2025 Saat 14:38
Merhaba Sude, öncelikle yanıtın işin teşekkür ederim. Kontrolleri sağladığımda serverin "running" durumunda olduğunu görüyorum, sunucu adı kullanıcı adı ve şifre vb DBSQLServerConnect parametreleri doğru. Sorun başka bir yerden kaynaklı fakat bulamıyorum.


Mesajı Yazan: haletr
Mesaj Tarihi: 11 Temmuz 2025 Saat 14:58
Merhaba Turgut, 

/* ---------- SQL Server bağlantısı ---------- */
if not Clomosy.DBSQLServerConnect(
       'SQL Server',
       'TURGUT-KIR\\ATIKER',  
       'sa',             
       '1',                   
       'TURGUT25',                    
       1433                    
     )

Bu fonksiyonu bu şekilde değiştirip deneyebilir misin? İyi çalışmalar.




Mesajı Yazan: turgutkir
Mesaj Tarihi: 11 Temmuz 2025 Saat 15:13
Merhaba Hale, öncelikle yanıtın işin teşekkür ederim. Clomosy.DBSQLServerConnect(...) fonksiyonu, parametreleri belirli sırada bekler diye biliyorum ama tabii ki dediğin gibi değiştirip denedim fakat bir değişiklik olmadı aynı sorun devam ediyor.


Mesajı Yazan: haletr
Mesaj Tarihi: 11 Temmuz 2025 Saat 15:47
Tekrar Merhaba Turgut,

Ben bağlantı yaptığımda bu şekilde kullandığımda bende çalışıyor acaba iki tane \\ olduğu için olabilir mi? Server adından emin misin? 

Clomosy.DBSQLServerConnect('SQL Server', 'HALE\ATIKER', 'sa', 'sifre', 'database adi', 1433);

bu şekilde ben projemde kullanıyorum ve bir sorun çıkmamıştı.



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net