Komunikat ListaT: Size mismatch for field @Indeks
Problem: Na niektórych firmach pojawia się komunikat ListaT: Size mismatch for field '@Indeks', expecting: 220 actual: 200.
Błąd może pojawić się, jeśli w Symfonii R2Płatnik posiadasz firmy, na których nie pracujesz przez dłuższy czas, a wykonujesz niezbędne aktualizacje programu. Aby usunąć błąd podążaj zgodnie z poniższymi krokami. Potrzebujesz do tego działania dostępu do programu MS SQL Server Management Studio.
Rozwiązanie problemu
- Wykonaj archiwizację programu. Jak to zrobić opisaliśmy w artykule Archiwizacja danych w Symfonia R2Płatnik
- Wyłącz Symfonię R2Płatnik na wszystkich stacjach roboczych. Zatrzymaj usługi dodatkowe, takie jak moduł WWW lub R2Czytnik.
- Uruchom MS SQL Server Management Studio i połącz się z tą instancją, na której jest baza danych R2Płatnika – nazwę swojej instancji i bazy znajdziesz w głównym oknie R2Płatnika na górnym pasku.
- Na bazie, na której wystąpił błąd, wykonaj poniższe zapytanie uaktualniające parametry tabel. Przed tą operacją niezbędne jest wykonanie archiwizacji wszystkich danych z Symfonia R2Płatnik.
- Wybierz New Query.
- Wybierz bazę, na której pojawia się komunikat.
Aby dowiedzieć się, na której konkretnie bazie należy to wykonać – w oknie Firmy w Symfonii R2Płatnik wyciągnij kolumnę Ide i sprawdź, jaki jest numer przy tej firmie, na której występuje problem. Aby to zrobić przejdź do Zbiory → Wybór firmy i na zakładce Lista wybierz z górnego paska ikonę Ustawienia okna. W tabeli Dostępne znajdź pozycję Ide i przesuń ją za pomocą strzałki do tabeli Aktywne. Kliknij OK, aby zatwierdzić. Obok nazwy firmy otrzymasz numer identyfikacyjny podbazy. Zapytanie wykonuj po wybraniu do kontekstu w MS SQL Server Management Studio podbazy o odpowiedniej nazwie, która ma na końcu napis dane z numerem Ide z okna Firmy Symfonii R2Płatnik.
- Wklej treść skryptu SQL:
ALTER TABLE dbo.LISTA
ALTER COLUMN X_Indeks binary(220)
go
ALTER TABLE dbo.NPOZLIST
ALTER COLUMN X_Indeks binary(220) - Wykonaj polecenie za pomocą przycisku Execute.
Jeśli problem występuje na więcej niż jednej firmie – wówczas skrypt SQL wykonaj osobno dla każdej z firm, wybierając odpowiednią nazwę podbazy w MS SQL Server Management Studio.
Kiedy stosować ten artykuł
- Pojawia się komunikat ListaT: Size mismatch for field '@Indeks', expecting: 220 actual: 200 na jednej lub kilku firmach.
- Błąd występuje po aktualizacji programu na firmach, na których nie pracujesz przez dłuższy czas.
- Chcesz uaktualnić parametry tabel w bazie danych za pomocą skryptu SQL.