diff --git a/src/components/VnTable/VnTable.vue b/src/components/VnTable/VnTable.vue
index 97053184a..4592a60cc 100644
--- a/src/components/VnTable/VnTable.vue
+++ b/src/components/VnTable/VnTable.vue
@@ -45,6 +45,10 @@ const $props = defineProps({
         type: Object,
         default: null,
     },
+    createAsDialog: {
+        type: Boolean,
+        default: true,
+    },
     cardClass: {
         type: String,
         default: 'flex-one',
@@ -239,6 +243,11 @@ defineExpose({
     redirect: redirectFn,
     selected,
 });
+
+function handleOnDataSaved(_, res) {
+    if (_.onDataSaved) _.onDataSaved(this);
+    else $props.create.onDataSaved(_);
+}
 </script>
 <template>
     <QDrawer
@@ -556,8 +565,16 @@ defineExpose({
             </template>
         </CrudModel>
     </div>
-    <QPageSticky v-if="create" :offset="[20, 20]" style="z-index: 2">
-        <QBtn @click="showForm = !showForm" color="primary" fab icon="add" />
+    <QPageSticky :offset="[20, 20]" style="z-index: 2">
+        <QBtn
+            @click="
+                () =>
+                    createAsDialog ? (showForm = !showForm) : handleOnDataSaved(create)
+            "
+            color="primary"
+            fab
+            icon="add"
+        />
         <QTooltip>
             {{ create.title }}
         </QTooltip>
@@ -566,7 +583,7 @@ defineExpose({
         <FormModelPopup
             v-bind="create"
             :model="$attrs['data-key'] + 'Create'"
-            @on-data-saved="(_, res) => create.onDataSaved(res)"
+            @on-data-saved="handleOnDataSaved"
         >
             <template #form-inputs="{ data }">
                 <div class="grid-create">
diff --git a/src/pages/Item/ItemFixedPrice.vue b/src/pages/Item/ItemFixedPrice.vue
index fb9fa33f9..758594082 100644
--- a/src/pages/Item/ItemFixedPrice.vue
+++ b/src/pages/Item/ItemFixedPrice.vue
@@ -192,6 +192,10 @@ const columns = computed(() => [
         field: 'warehouseFk',
         name: 'warehouseFk',
         ...defaultColumnAttrs,
+        component: 'select',
+        attrs: {
+            options: warehousesOptions,
+        },
     },
     {
         align: 'right',
@@ -230,16 +234,19 @@ const validations = (row, rowIndex, col) => {
     );
 };
 
-async function upsertFixedPrice(row) {
-    try {
-        const { data } = await axios.patch('FixedPrices/upsertFixedPrice', row);
-        return data;
-    } catch (err) {
-        console.error('Error editing price', err);
-    }
-}
+const updateMinPrice = async (value, props) => {
+    // El checkbox hasMinPrice se encuentra en la misma columna que el input hasMinPrice
+    // Por lo tanto le mandamos otro objeto con las mismas propiedades pero con el campo 'field' cambiado
+    props.row.hasMinPrice = value;
+    await upsertPrice({
+        row: props.row,
+        col: { field: 'hasMinPrice' },
+        rowIndex: props.rowIndex,
+    });
+};
+
 const upsertPrice = async ({ row, col, rowIndex }, resetMinPrice = false) => {
-    if (!validations(row, rowIndex, col)) return;
+    // if (!validations(row, rowIndex, col)) return;
 
     try {
         if (resetMinPrice) row.hasMinPrice = 0;
@@ -249,6 +256,14 @@ const upsertPrice = async ({ row, col, rowIndex }, resetMinPrice = false) => {
         console.error('Error editing price', err);
     }
 };
+async function upsertFixedPrice(row) {
+    try {
+        const { data } = await axios.patch('FixedPrices/upsertFixedPrice', row);
+        return data;
+    } catch (err) {
+        console.error('Error editing price', err);
+    }
+}
 async function saveOnRowChange(row) {
     if (rowsSelected.value.length > 1) return;
     if (rowsSelected.value[0]?.id === row.id) return;
@@ -299,24 +314,24 @@ function checkLastVisibleRow() {
 }
 const addRow = (fixedPrice = null) => {
     const lastvisible = checkLastVisibleRow();
-    if (!fixedPrices.value || fixedPrices.value.length === 0) {
-        fixedPrices.value = [];
+    // if (!fixedPrices.value || fixedPrices.value.length === 0) {
+    //     fixedPrices.value = [];
 
-        const today = Date.vnNew();
-        const millisecsInDay = 86400000;
-        const daysInWeek = 7;
-        const nextWeek = new Date(today.getTime() + daysInWeek * millisecsInDay);
+    //     const today = Date.vnNew();
+    //     const millisecsInDay = 86400000;
+    //     const daysInWeek = 7;
+    //     const nextWeek = new Date(today.getTime() + daysInWeek * millisecsInDay);
 
-        const newPrice = {
-            started: today,
-            ended: nextWeek,
-            hasMinPrice: 0,
-        };
+    //     const newPrice = {
+    //         started: today,
+    //         ended: nextWeek,
+    //         hasMinPrice: 0,
+    //     };
 
-        fixedPricesOriginalData.value.push({ ...newPrice });
-        fixedPrices.value.push({ ...newPrice });
-        return;
-    }
+    //     fixedPricesOriginalData.value.push({ ...newPrice });
+    //     fixedPrices.value.push({ ...newPrice });
+    //     return;
+    // }
     if (fixedPrice) {
         lastItem.value = fixedPrice;
         return;
@@ -326,7 +341,7 @@ const addRow = (fixedPrice = null) => {
         JSON.stringify(fixedPrices.value[fixedPrices.value.length - 1])
     );
     lastItem.value = lastItemCopy;
-    // tableRef.value.create.formInitialData = lastItem;
+    tableRef.value.create.formInitialData = lastItem;
     delete lastItemCopy.id;
     fixedPricesOriginalData.value.splice(lastvisible, 0, lastItemCopy);
     fixedPrices.value.unshift(lastItemCopy);
@@ -523,7 +538,7 @@ onUnmounted(() => (stateStore.rightDrawer = false));
                         {{ row.name }}
                     </span>
                     <ItemDescriptorProxy :id="row.itemFk" />
-                    <FetchedTags style="width: 200px" :item="row" :max-length="6" />
+                    <FetchedTags style="max-width: 220px" :item="row" :max-length="6" />
                 </QTd>
             </template>
             <template #column-rate2="props">
@@ -556,8 +571,8 @@ onUnmounted(() => (stateStore.rightDrawer = false));
                         <QCheckbox
                             :model-value="props.row.hasMinPrice"
                             @update:model-value="updateMinPrice($event, props)"
-                            :true-value="'true'"
-                            :false-value="'false'"
+                            :false-value="0"
+                            :true-value="1"
                         />
                         <VnInput
                             class="col"
@@ -640,12 +655,6 @@ onUnmounted(() => (stateStore.rightDrawer = false));
                 </QTd>
             </template>
         </VnTable>
-        <QPageSticky :offset="[20, 0]">
-            <QBtn @click="addRow()" color="primary" fab icon="add" />
-            <QTooltip>
-                {{ t('Add') }}
-            </QTooltip>
-        </QPageSticky>
 
         <QDialog ref="editTableCellDialogRef">
             <EditTableCellValueForm
@@ -670,6 +679,9 @@ onUnmounted(() => (stateStore.rightDrawer = false));
             & .q-checkbox {
                 & .q-checkbox__inner {
                     position: relative !important;
+                    &.q-checkbox__inner--truthy {
+                        color: var(--q-primary);
+                    }
                 }
             }
         }