title: E/SQLiteLog: (1) no such table: FormasPagos (code 1 SQLITE_ERROR[1]): , while compiling:
body: <p>I am trying to run an application correctly. The same one executes but when I want to open a function of the same one I get this error and the app crashes:
  Everything is with java. If someone knows how to solve it, it would be very helpful, since I've been trying the same thing for weeks and I can't find the error. I suppose that it is for something of the data but I am not sure.</p>
  <pre><code> E/SQLiteLog: (1) no such table: FormasPagos in &quot;SELECT P.id AS P_id, P.cliente_id AS P_cliente_id, P.formasPago_id AS P_formasPago_id, P.tranportes_id AS P_tranportes_id, P.estado AS P_estado, P.fecha_creacion AS P_fecha_creac
  E/AndroidRuntime: FATAL EXCEPTION: pool-25-thread-1
      Process: com.paradigma.SIGEPedidos, PID: 29764
      android.database.sqlite.SQLiteException: no such table: FormasPagos (code 1 SQLITE_ERROR[1]): , while compiling: SELECT P.id AS P_id, P.cliente_id AS P_cliente_id, P.formasPago_id AS P_formasPago_id, P.tranportes_id AS P_tranportes_id, P.estado AS P_estado, P.fecha_creacion AS P_fecha_creacion, P.lista_codSIGE AS P_lista_codSIGE, P.clientePendiente_id AS P_clientePendiente_id, C.id AS C_id, C.nombre AS C_nombre, C.email AS C_email, C.telefono AS C_telefono, C.domicilioEntrega AS C_domicilioEntrega, C.deBaja AS C_deBaja, C.lista_id AS C_lista_id, C.codigo AS C_codigo, CP.id AS CP_id, CP.razonSocial AS CP_razonSocial, CP.nombre AS CP_nombre, CP.domicilio AS CP_domicilio, CP.telefono AS CP_telefono, CP.nroDocumento AS CP_nroDocumento, CP.email AS CP_email, CP.listasDePrecios_id AS CP_listasDePrecios_id, CP.descuento AS CP_descuento, CP.recargo AS CP_recargo, CP.localidad_id AS CP_localidad_id, CP.tipoDocumento_id AS CP_tipoDocumento_id, CP.situacionIVA_id AS CP_situacionIVA_id, CP.percepcionIVA_id AS CP_percepcionIVA_id, F.codigo AS F_codigo, F.nombre AS F_nombre, F.deBaja AS F_deBaja, T.codigo AS T_codigo, T.nombre AS T_nombre, T.deBaja AS T_deBaja FROM ((((PedidosPendientes P LEFT JOIN Clientes C ON P.cliente_id = C.id) LEFT JOIN ClientesPendientes CP  ON P.clientePendiente_id = CP.id) LEFT JOIN FormasPagos F  ON P.formasPago_id = F.codigo) LEFT JOIN Transportes T  ON P.tranportes_id = T.codigo)
          at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
          at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1463)
          at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:901)
          at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:590)
          at android.database.sqlite.SQLiteProgram.&lt;init&gt;(SQLiteProgram.java:62)
          at android.database.sqlite.SQLiteQuery.&lt;init&gt;(SQLiteQuery.java:37)
          at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:46)
          at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:2063)
          at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:2002)
          at SQLite.DbContentProvider.rawQuery(DbContentProvider.java:60)
          at SQLite.pedidospendientes.PedidosPendientesDaoImpl.getAllPendientes_impl(PedidosPendientesDaoImpl.java:163)
          at SQLite.pedidospendientes.PedidosPendientesDaoImpl.getAllPendientesLD(PedidosPendientesDaoImpl.java:51)
          at com.paradigma.SIGEPedidos.repositories.PedidosPendientesRepository.refreshPedidosPendientes(PedidosPendientesRepository.java:81)
          at com.paradigma.SIGEPedidos.repositories.PedidosPendientesRepository$$ExternalSyntheticLambda3.run(Unknown Source:2)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
          at java.lang.Thread.run(Thread.java:923)
  </code></pre>
  <p>Here is my code:</p>
  <p>Main activity:</p>
  <pre><code>    package com.paradigma.SIGEPedidos.views.main;
  
  import androidx.annotation.NonNull;
  import androidx.appcompat.app.ActionBarDrawerToggle;
  import androidx.appcompat.app.AppCompatActivity;
  import androidx.core.content.ContextCompat;
  import androidx.core.view.GravityCompat;
  import androidx.drawerlayout.widget.DrawerLayout;
  
  import android.annotation.SuppressLint;
  import android.content.BroadcastReceiver;
  import android.content.Context;
  import android.content.Intent;
  import android.content.IntentFilter;
  import android.database.sqlite.SQLiteDatabase;
  import android.os.Bundle;
  import android.text.Spannable;
  import android.text.SpannableString;
  import android.text.style.ForegroundColorSpan;
  import android.text.style.TextAppearanceSpan;
  import android.view.Menu;
  import android.view.MenuItem;
  import android.view.View;
  import android.widget.TextView;
  
  import com.google.android.material.appbar.AppBarLayout;
  import com.google.android.material.dialog.MaterialAlertDialogBuilder;
  import com.google.android.material.floatingactionbutton.FloatingActionButton;
  import com.paradigma.SIGEPedidos.R;
  import com.paradigma.SIGEPedidos.component.searchtoolbar.SearchToolbar;
  import com.paradigma.SIGEPedidos.repositories.LoginRepository;
  import com.paradigma.SIGEPedidos.utils.PreferencesMethods;
  import com.google.android.material.appbar.MaterialToolbar;
  import com.google.android.material.navigation.NavigationView;
  import com.paradigma.SIGEPedidos.views.login.LoginActivity;
  import com.paradigma.SIGEPedidos.views.UpdateActivity;
  import androidx.navigation.NavController;
  import androidx.navigation.Navigation;
  import androidx.navigation.ui.AppBarConfiguration;
  import androidx.navigation.ui.NavigationUI;
  
  public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
  DrawerLayout drawer;
  NavigationView navigationView;
  ActionBarDrawerToggle toggle;
  
  private FloatingActionButton cartFAB;
  
  MaterialToolbar toolbar;
  private ToolbarHelper toolbarHelper;
  AppBarLayout appBarLayout;
  private CollapsingToolbarHelper collapsingToolbarHelper;
  private SearchViewHelper searchViewHelper;
  private SQLiteDatabase db;
  
  
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      registerReceiver(RECEIVER_CLOSE, new IntentFilter(&quot;close&quot;));
      registerReceiver(RECEIVER_UPDATE, new IntentFilter(&quot;update&quot;));
      setContentView(R.layout.activity_articulos);
  
      toolbar = findViewById(R.id.toolbar);
      toolbarHelper = new ToolbarHelper(this, toolbar);
      setSupportActionBar(toolbar);
  
      appBarLayout = findViewById(R.id.toolbar_layout);
      collapsingToolbarHelper = new CollapsingToolbarHelper(this, appBarLayout);
      collapsingToolbarHelper.configure();
      collapsingToolbarHelper.getTxtCliente().setOnClickListener(
              v -&gt; goTo(R.id.action_to_listasDePreciosFragment)
          );
  
      cartFAB = findViewById(R.id.button_ver_pedidos);
  
      searchViewHelper = new SearchViewHelper(this,appBarLayout);
  
      initNavigationDrawer();
      NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
      AppBarConfiguration appBarConfiguration =
              new AppBarConfiguration.Builder(navController.getGraph()).build();
      NavigationUI.setupWithNavController(toolbar, navController, appBarConfiguration);
      SearchToolbar searchToolbar = findViewById(R.id.search_toolbar);
      navController.addOnDestinationChangedListener((controller, destination, arguments) -&gt; {
          if(destination.getId() == R.id.ArticulosFragment){
              collapsingToolbarHelper.setExpanded(true, true);
              cartFAB.setVisibility(View.VISIBLE);
              navigationView.setCheckedItem(R.id.action_articulos);
              drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
              toggle.syncState();
              toolbarHelper.configureToolbar();
              toolbar.setNavigationOnClickListener(v -&gt; drawer.openDrawer(GravityCompat.START));
          }else{
              if(searchToolbar.isOpen()) searchToolbar.close();
              cartFAB.setVisibility(View.GONE);
              collapsingToolbarHelper.setExpanded(false,true);
              drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
              toolbar.setNavigationOnClickListener(v -&gt; onBackPressed());
          }
      });
  }
  
  public CollapsingToolbarHelper getCollapsingToolbarHelper() {
      return collapsingToolbarHelper;
  }
  
  public SearchViewHelper getSearchViewHelper() {
      return searchViewHelper;
  }
  
  @Override
  public void onBackPressed() {
      if(drawer.isDrawerOpen(GravityCompat.START)) {
          drawer.closeDrawer(GravityCompat.START); return;
      }
      if(collapsingToolbarHelper.isOpenDrawerLayoutFilter()){
          collapsingToolbarHelper.closeDrawerLayoutFilter(); return;
      }
  
      NavController navController =
              Navigation.findNavController(this, R.id.nav_host_fragment);
  
      if( navController.getCurrentDestination().getId() == R.id.ArticulosFragment) {
          showDialogSalir();
      }else{
          super.onBackPressed();
      }
  }
  
  public void showDialogSalir(){
      SpannableString spanTitle = new SpannableString(&quot;Cerrar&quot;);
      spanTitle.setSpan(new ForegroundColorSpan(
                      ContextCompat.getColor(this, R.color.colorPrimary)),
              0, spanTitle.length(),
              Spannable.SPAN_EXCLUSIVE_EXCLUSIVE
      );
  
      String msg = &quot;¿Desea salir de la aplicación?&quot;;
  
      new MaterialAlertDialogBuilder(this)
              .setTitle(spanTitle)
              .setMessage(msg).setPositiveButton(
              &quot;Aceptar&quot;, (dialog, which) -&gt; {
                  dialog.dismiss();
                  super.onBackPressed();
              }).setNeutralButton(&quot;Cancelar&quot;, (dialog, which) -&gt; dialog.dismiss()).show();
  }
  @Override
  @SuppressLint(&quot;NonConstantResourceId&quot;)
  public boolean onNavigationItemSelected(@NonNull MenuItem item) {
      int itemId = item.getItemId();
      switch (itemId){
          case R.id.action_create_objeto_facturable:
              goTo(R.id.action_to_CreateObjectoFacturableFragment);break;
          case R.id.action_pendientes:
              goTo(R.id.action_to_pedidosPendientesFragment);break;
          case R.id.action_enviados:
              goTo(R.id.action_to_pedidosApiFragment);break;
          case R.id.action_listaDePrecios:
              goTo(R.id.action_to_listasDePreciosFragment);break;
          case R.id.action_clientes_sin_alta:
              goTo(R.id.action_to_ClientesSinAltaFragment);break;
          case R.id.action_log_out:
              this.logOut();break;
          default:break;
      }
      return false;
  }
  public void onOpen(SQLiteDatabase db) {
      this.db = db;
      onCreate(db);
  }
  
  private void onCreate(SQLiteDatabase db) {
  }
  
  private void logOut() {
      LoginRepository.getInstance().logOut(this);
      Intent intent = new Intent(this, LoginActivity.class);
      intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
      startActivity(intent);
  }
  
  private void goTo(int fragment){
      Navigation.findNavController(this,R.id.nav_host_fragment).navigate(fragment);
      drawer.closeDrawer(GravityCompat.START);
  }
  
  public void initNavigationDrawer(){
      drawer = findViewById(R.id.drawer_layout_main);
      navigationView = findViewById(R.id.articulos_nav_view);
      toggle = new ActionBarDrawerToggle(this, drawer, toolbar,
              R.string.navigation_drawer_open, R.string.navigation_drawer_close);
      navigationView.setNavigationItemSelectedListener(this);
      drawer.addDrawerListener(toggle);
      toggle.syncState();
  
      initMenuStyles(navigationView.getMenu());
  
      TextView username = navigationView.getHeaderView(0).findViewById(R.id.textview_username);
      String usernameString = PreferencesMethods.getUsername(this) + &quot;!&quot;;
      username.setText(usernameString);
  
      navigationView.setNavigationItemSelectedListener(this);
  }
  
  private void initMenuStyles(Menu menu) {
      int itemCategoryColor = R.style.item_category_color;
      setStyleCategory(R.id.cuenta_menu_category, itemCategoryColor, menu);
      setStyleCategory(R.id.listas_menu_category, itemCategoryColor, menu);
      setStyleCategory(R.id.pedido_menu_category, itemCategoryColor, menu);
      setStyleCategory(R.id.action_articulos, R.style.item_category_rounded,menu);
  }
  
  private void setStyleCategory(int category,int style, Menu menu){
      MenuItem tools= menu.findItem(category);
      SpannableString s = new SpannableString(tools.getTitle());
      s.setSpan(new TextAppearanceSpan(this, style), 0, s.length(), 0);
      tools.setTitle(s);
  }
  
  private final BroadcastReceiver RECEIVER_CLOSE = new BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent) {
          String message = &quot;Se ha cerrado la sesión&quot;;
  
          if(intent.getStringExtra(&quot;message_close&quot;) != null){
              message = intent.getStringExtra(&quot;message_close&quot;);
          }
  
          MaterialAlertDialogBuilder messageDialog = new MaterialAlertDialogBuilder(context)
                  .setTitle(&quot;Sesión Finalizada&quot;)
                  .setMessage(message)
                  .setPositiveButton(&quot;Cerrar&quot;, (dialog, which) -&gt; dialog.dismiss());
          messageDialog.setOnDismissListener(dialog -&gt; finish());
          messageDialog.show();
      }
  };
  
  private final BroadcastReceiver RECEIVER_UPDATE = new BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent){goToUpdateActivity();}
  };
  
  @Override
  protected void onDestroy() {
      try{
      unregisterReceiver(RECEIVER_UPDATE);
      }catch (Exception ignored){}
      unregisterReceiver(RECEIVER_CLOSE);
      super.onDestroy();
  }
  
  @Override
  protected void onPause() {
      unregisterReceiver(RECEIVER_UPDATE);
      super.onPause();
  }
  
  @Override
  protected void onResume(){
      super.onResume();
      registerReceiver(RECEIVER_UPDATE, new IntentFilter(&quot;update&quot;));
  }
  
  private void goToUpdateActivity(){
      Intent intent = new Intent (this, UpdateActivity.class);
      intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
      this.finishAffinity();
      startActivity(intent);
  }
  
  }
  </code></pre>
  <p>DataBase.java:</p>
  <pre><code>    package SQLite;
  
  import android.annotation.SuppressLint;
  import android.content.Context;
  import android.database.sqlite.SQLiteDatabase;
  import android.database.sqlite.SQLiteOpenHelper;
  
  import com.paradigma.SIGEPedidos.utils.PreferencesMethods;
  
  import java.io.File;
  
  import SQLite.articulos.ArticulosDaoImpl;
  import SQLite.clientespendientes.ClientesPendientesDaoImpl;
  import SQLite.clientespendientes.models.ClientesPendientes;
  import SQLite.dao.ArticulosDao;
  import SQLite.dao.ClientesPendientesDao;
  import SQLite.dao.FacturadorDao;
  import SQLite.dao.FilterDao;
  import SQLite.dao.OtrosFacturablesDao;
  import SQLite.dao.PedidosAPIDao;
  import SQLite.dao.PedidosDao;
  import SQLite.dao.PedidosPendientesDao;
  import SQLite.dao.PreciosDao;
  import SQLite.facturador.FacturadorDaoImpl;
  import SQLite.otrosfacturables.OtrosFacturablesDaoImpl;
  import SQLite.otrosfacturables.models.OtrosFacturables;
  import SQLite.pedidos.PedidosDaoImpl;
  import SQLite.pedidos.models.Pedidos;
  import SQLite.pedidosapi.PedidosAPIDaoImpl;
  import SQLite.pedidosapi.models.PedidosAPI;
  import SQLite.pedidosapi.models.PedidosArticulosAPI;
  import SQLite.pedidospendientes.PedidosPendientesDaoImpl;
  import SQLite.pedidospendientes.models.PedidosArticulosPendiente;
  import SQLite.pedidospendientes.models.PedidosPendientes;
  import SQLite.precios.PreciosDaoImpl;
  import SQLite.objectfilter.FilterDaoImpl;
  
  public class DataBase {
  
  
  
  
      @SuppressLint(&quot;StaticFieldLeak&quot;)
      private static DataBase db;
      private static final String DATABASE_NAME = &quot;Articulos_&quot;;
      private static final int DATABASE_VERSION = 4;
  
      private SQLiteDatabase db_sqlite;
      public ConexionHelper conexionHelper;
      private final DbContentProvider dbContentProvider;
  
      public FilterDao filterDao;
      public ArticulosDao articulosDao;
      public PreciosDao preciosDao;
      public FacturadorDao facturadorDao;
      public PedidosDao pedidosDao;
      public PedidosAPIDao pedidosAPIDao;
      public PedidosPendientesDao pedidosPendientesDao;
      public OtrosFacturablesDao otrosFacturablesDao;
      public ClientesPendientesDao clientesPendientesDao;
  
  
      public static final String KEY_DATE = &quot;date&quot;;
  
      private DataBase(Context context) {
          String version = PreferencesMethods.getNroActualizacion(context);
          conexionHelper = new ConexionHelper(context, DATABASE_NAME+version,null, DATABASE_VERSION);
          db_sqlite = conexionHelper.getWritableDatabase();
          dbContentProvider = DbContentProvider.getInstance(db_sqlite);
          filterDao = new FilterDaoImpl(dbContentProvider);
          articulosDao = new ArticulosDaoImpl(dbContentProvider);
          preciosDao = new PreciosDaoImpl(dbContentProvider);
          facturadorDao = new FacturadorDaoImpl(dbContentProvider);
          pedidosDao = new PedidosDaoImpl(dbContentProvider);
          pedidosAPIDao = new PedidosAPIDaoImpl(dbContentProvider);
          pedidosPendientesDao = new PedidosPendientesDaoImpl(dbContentProvider);
          otrosFacturablesDao = new OtrosFacturablesDaoImpl(dbContentProvider);
          clientesPendientesDao = new ClientesPendientesDaoImpl(dbContentProvider);
          createNeededTables();
      }
  
      public static DataBase getInstance(Context context){
          if(!checkDataBase(context)){
              return null;
          }
          if(db == null){
              db = new DataBase(context);
          }
          return db;
      }
  
      public static boolean checkDataBase(Context context){
  //        if(context == null) return false;
          String version = PreferencesMethods.getNroActualizacion(context);
          String pathname = context.getApplicationInfo().dataDir +&quot;/databases/&quot; +(&quot;Articulos_&quot;+version);
          File databaseFile = new File(pathname);
          return databaseFile.exists();
      }
  
      public static void restart(Context context) {
          if(db == null) return;
          String version = PreferencesMethods.getNroActualizacion(context);
          db.conexionHelper = new ConexionHelper(context, DATABASE_NAME+version,null, DATABASE_VERSION);
          db.db_sqlite = db.conexionHelper.getWritableDatabase();
          db.dbContentProvider.setSqliteDb(db.db_sqlite);
          db.createNeededTables();
      }
  
      public void createNeededTables(){
          createIfNoExistTablesPedidos();
          createIfNoExistTablesPedidosAPI();
          createIfNoExistTablesPedidosArticulosAPI();
          createIfNoExistTablesPedidosPendientes();
          createIfNoExistTablesPedidosArticulosPendientes();
          createIfNoExistTablesOtrosFacturables();
          createIfNoExistTablesClientesPendientes();
      }
  
      private void createIfNoExistTablesClientesPendientes() {
          db_sqlite.execSQL(ClientesPendientes.Schema.CLIENTESPENDIENTES_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesPedidos(){
          db_sqlite.execSQL(Pedidos.Schema.PEDIDOS_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesPedidosAPI() {
          db_sqlite.execSQL(PedidosAPI.Schema.PEDIDOSAPI_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesPedidosArticulosAPI() {
          db_sqlite.execSQL(PedidosArticulosAPI.Schema.PEDIDOSARTICULOSAPI_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesPedidosPendientes() {
          db_sqlite.execSQL(PedidosPendientes.Schema.PEDIDOSPENDIENTES_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesPedidosArticulosPendientes() {
          db_sqlite.execSQL(PedidosArticulosPendiente.Schema.PEDIDOSARTICULOSPENDIENTE_TABLE_CREATE);
      }
  
      private void createIfNoExistTablesOtrosFacturables() {
          db_sqlite.execSQL(OtrosFacturables.Schema.OTROSFACTURABLES_TABLE_CREATE);
      }
  
      public void changeDataBase(Context context) {
          String version = PreferencesMethods.getNroActualizacion(context);
          conexionHelper = new ConexionHelper(context, DATABASE_NAME+version,null, DATABASE_VERSION);
          db_sqlite = conexionHelper.getWritableDatabase();
          dbContentProvider.setSqliteDb(db_sqlite);
          createNeededTables();
      }
  
  
  
      public void close() {
          db = null;
      }
  }
  </code></pre>
  <p>build.gradle (app):</p>
  <pre><code>    apply plugin: 'com.android.application'
  apply plugin: 'com.google.gms.google-services'
  
  android {
      compileSdkVersion 32
  
      defaultConfig {
          applicationId &quot;com.paradigma.SIGEPedidos&quot;
          minSdkVersion 21
          targetSdkVersion 32
          versionCode 20
          versionName &quot;1.20.0-alpha&quot;
          multiDexEnabled true
          vectorDrawables.useSupportLibrary = true
  
  
          testInstrumentationRunner &quot;androidx.test.runner.AndroidJUnitRunner&quot;
          javaCompileOptions {
              annotationProcessorOptions {
                  arguments = [&quot;room.schemaLocation&quot;: &quot;$projectDir/schemas&quot;.toString()]
  
  
              }
          }
      }
  
      buildTypes {
          release {
              minifyEnabled false
              proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
          }
          debug {
              resValue(&quot;string&quot;, &quot;PORT_NUMBER&quot;, &quot;8081&quot;)
          }
      }
      compileOptions {
          targetCompatibility = 1.8
          sourceCompatibility = 1.8
      }
  
  }
  apply plugin: 'com.google.gms.google-services'
  dependencies {
      implementation fileTree(dir: 'libs', include: ['*.jar'])
  
      ext {
          appCompatVersion = '1.3.0-rc01'
  
      }
      implementation &quot;androidx.room:room-runtime:2.4.2&quot;
      annotationProcessor 'android.arch.persistence.room:compiler:1.1.1'
      implementation 'com.google.android.material:material:1.5.0-alpha02'
      implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
      implementation 'androidx.navigation:navigation-fragment:2.3.0'
      implementation 'androidx.navigation:navigation-ui:2.3.0'
      implementation 'androidx.legacy:legacy-support-v4:1.0.0'
      implementation project(path: ':EmptyMessageLayout')
      testImplementation 'junit:junit:4.12'
      androidTestImplementation 'androidx.test.ext:junit:1.1.1'
      androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
      implementation 'com.google.firebase:firebase-perf:20.1.0'
  
  
  
  
      implementation 'com.squareup.retrofit2:retrofit:2.4.0'
      implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
      implementation 'com.squareup.okhttp3:logging-interceptor:3.9.1'
  
      def room_version = &quot;2.2.5&quot;
      implementation &quot;androidx.room:room-runtime:$room_version&quot;
      annotationProcessor &quot;androidx.room:room-compiler:$room_version&quot;
  
      implementation 'androidx.recyclerview:recyclerview:1.1.0'
      implementation &quot;androidx.cardview:cardview:1.0.0&quot;
      implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
      implementation 'androidx.paging:paging-runtime:2.1.2'
      implementation &quot;androidx.work:work-runtime:2.4.0&quot;
  
      implementation 'com.google.firebase:firebase-messaging:20.1.6'
      implementation 'com.google.firebase:firebase-analytics:17.4.0'
  
  
  
      implementation 'com.github.bumptech.glide:glide:4.9.0'
      annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
  
      debugImplementation 'com.amitshekhar.android:debug-db-encrypt:1.0.6'
  
      implementation 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
      implementation 'com.google.android:flexbox:2.0.1'
  
      implementation 'com.paradigma.components:components:1.0.0'
  
      def archLifecycleVersion = '2.2.0'
  //Lifecycle components
      implementation &quot;androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion&quot;
      implementation &quot;androidx.lifecycle:lifecycle-viewmodel-ktx:$archLifecycleVersion&quot;
      implementation &quot;androidx.lifecycle:lifecycle-livedata-ktx:$archLifecycleVersion&quot;
      implementation &quot;androidx.lifecycle:lifecycle-runtime-ktx:$archLifecycleVersion&quot;
  
  
  
  
  }
  </code></pre>
  <p>Code that cannot load (FormasPago.java):</p>
  <pre><code>    package SQLite.facturador.models;
  
  import android.database.Cursor;
  
  import com.paradigma.components.MultiSelectInterface;
  
  public class FormasPagos implements MultiSelectInterface {
  
      public String codigo;
  
      public String nombre;
  
      public boolean deBaja;
  
      @Override
      public Long getId() {
          return Long.valueOf(codigo);
      }
  
      @Override
      public String displayName() {
          return nombre;
      }
  
      public interface Schema{
          String FORMASPAGO_TABLE = &quot;FormasPagos&quot;;
          String COLUMN_CODIGO = &quot;codigo&quot;;
          String COLUMN_NOMBRE = &quot;nombre&quot;;
          String COLUMN_DEBAJA = &quot;deBaja&quot;;
          String[] FORMASPAGO_COLUMNS = new String[] {
                  COLUMN_CODIGO, COLUMN_NOMBRE, COLUMN_DEBAJA,
          };
      }
  
      public void setFormasPagosValues(Cursor cursor, String prefix) {
          if (cursor != null) {
              if (cursor.getColumnIndex(prefix + Schema.COLUMN_CODIGO) != -1) {
                  int idIndex = cursor.getColumnIndexOrThrow(prefix + Schema.COLUMN_CODIGO);
                  this.codigo = cursor.getString(idIndex);
              }
  
              if (cursor.getColumnIndex(prefix + Schema.COLUMN_NOMBRE) != -1) {
                  int nombreIndex = cursor.getColumnIndexOrThrow(prefix + Schema.COLUMN_NOMBRE);
                  this.nombre = cursor.getString(nombreIndex);
              }
  
              if (cursor.getColumnIndex(prefix + Schema.COLUMN_DEBAJA) != -1) {
                  int debajaIndex = cursor.getColumnIndexOrThrow(prefix + Schema.COLUMN_DEBAJA);
                  this.deBaja = Boolean.parseBoolean(cursor.getString(debajaIndex));
              }
          }
      }
  
  }
  </code></pre>
  <p>I am waiting for an answer to solve the error, thank you very much.</p>
  <p><em><strong>If you need to show more code, please tell me.</strong></em></p>